blinker-alt


Nameblinker-alt JSON
Version 1.5 PyPI version JSON
download
home_pagehttp://pythonhosted.org/blinker/
SummaryFast, simple object-to-object and broadcast signaling
upload_time2017-10-15 15:04:52
maintainer
docs_urlNone
authorJason Kirtland
requires_python
licenseMIT License
keywords signal emit events broadcast
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![PyPI](https://img.shields.io/pypi/d/v/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)
[![PyPI](https://img.shields.io/pypi/d/l/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)
[![PyPI](https://img.shields.io/pypi/d/pyversions/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)

**Note: This is a fork of [jek/blinker](https://github.com/jek/blinker)!**

There didn't seem to be any activity anymore on the original repo, and the latest changes on 
master weren't officially released. So I forked the repo, merged a couple of important pull 
requests, and released a new version to PyPI under the name 
[blinker-alt](https://pypi.python.org/pypi/blinker-alt).

# Blinker

Blinker provides a fast dispatching system that allows any number of
interested parties to subscribe to events, or "signals".

Signal receivers can subscribe to specific senders or receive signals
sent by any sender.

    >>> from blinker import signal
    >>> started = signal('round-started')
    >>> def each(round):
    ...     print "Round %s!" % round
    ...
    >>> started.connect(each)

    >>> def round_two(round):
    ...     print "This is round two."
    ...
    >>> started.connect(round_two, sender=2)

    >>> for round in range(1, 4):
    ...     started.send(round)
    ...
    Round 1!
    Round 2!
    This is round two.
    Round 3!

See the [Blinker documentation](https://pythonhosted.org/blinker/) for more information.

## Requirements

Blinker requires Python 2.4 or higher, Python 3.0 or higher, or Jython 2.5 or higher.

## Changelog Summary

1.5 (October 15, 2017)

- Lower baseline cost of no-op signal send() & optional -O speedup.
- Verified Python 3.6 support (no changes needed).
- Verified Python 3.5 support (no changes needed).

1.4 (July 23, 2015)

- Verified Python 3.4 support (no changes needed)
- Additional bookkeeping cleanup for non-ANY connections at disconnect
  time.
- Added Signal._cleanup_bookeeping() to prune stale bookkeeping on
  demand

1.3 (July 3, 2013)

 - The global signal stash behind blinker.signal() is now backed by a
   regular name-to-Signal dictionary. Previously, weak references were
   held in the mapping and ephemeral usage in code like
   ``signal('foo').connect(...)`` could have surprising program behavior
   depending on import order of modules.
 - blinker.Namespace is now built on a regular dict. Use
   blinker.WeakNamespace for the older, weak-referencing behavior.
 - Signal.connect('text-sender') uses an alternate hashing strategy to
   avoid sharp edges in text identity.

1.2 (October 26, 2011)

 - Added Signal.receiver_connected and Signal.receiver_disconnected
   per-Signal signals.
 - Deprecated the global 'receiver_connected' signal.
 - Verified Python 3.2 support (no changes needed!)

1.1 (July 21, 2010)

 - Added ``@signal.connect_via(sender)`` decorator
 - Added ``signal.connected_to`` shorthand name for the
   ``temporarily_connected_to`` context manager.

1.0 (March 28, 2010)

 - Python 3.x compatibility

0.9 (February 26, 2010)

 - Sphinx docs, project website
 - Added ``with a_signal.temporarily_connected_to(receiver): ...`` support



            

Raw data

            {
    "_id": null,
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "cheesecake_code_kwalitee_id": null,
    "keywords": "signal emit events broadcast",
    "upload_time": "2017-10-15 15:04:52",
    "author": "Jason Kirtland",
    "home_page": "http://pythonhosted.org/blinker/",
    "download_url": "https://pypi.python.org/packages/4c/69/68741ce4881d6fa6b90d679f25c05e9568be13ab1a4a95c44c2dea2a9f20/blinker-alt-1.5.tar.gz",
    "platform": "",
    "version": "1.5",
    "cheesecake_documentation_id": null,
    "description": "[![PyPI](https://img.shields.io/pypi/d/v/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)\n[![PyPI](https://img.shields.io/pypi/d/l/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)\n[![PyPI](https://img.shields.io/pypi/d/pyversions/blinker-alt.svg)](https://pypi.python.org/pypi/blinker-alt)\n\n**Note: This is a fork of [jek/blinker](https://github.com/jek/blinker)!**\n\nThere didn't seem to be any activity anymore on the original repo, and the latest changes on \nmaster weren't officially released. So I forked the repo, merged a couple of important pull \nrequests, and released a new version to PyPI under the name \n[blinker-alt](https://pypi.python.org/pypi/blinker-alt).\n\n# Blinker\n\nBlinker provides a fast dispatching system that allows any number of\ninterested parties to subscribe to events, or \"signals\".\n\nSignal receivers can subscribe to specific senders or receive signals\nsent by any sender.\n\n    >>> from blinker import signal\n    >>> started = signal('round-started')\n    >>> def each(round):\n    ...     print \"Round %s!\" % round\n    ...\n    >>> started.connect(each)\n\n    >>> def round_two(round):\n    ...     print \"This is round two.\"\n    ...\n    >>> started.connect(round_two, sender=2)\n\n    >>> for round in range(1, 4):\n    ...     started.send(round)\n    ...\n    Round 1!\n    Round 2!\n    This is round two.\n    Round 3!\n\nSee the [Blinker documentation](https://pythonhosted.org/blinker/) for more information.\n\n## Requirements\n\nBlinker requires Python 2.4 or higher, Python 3.0 or higher, or Jython 2.5 or higher.\n\n## Changelog Summary\n\n1.5 (October 15, 2017)\n\n- Lower baseline cost of no-op signal send() & optional -O speedup.\n- Verified Python 3.6 support (no changes needed).\n- Verified Python 3.5 support (no changes needed).\n\n1.4 (July 23, 2015)\n\n- Verified Python 3.4 support (no changes needed)\n- Additional bookkeeping cleanup for non-ANY connections at disconnect\n  time.\n- Added Signal._cleanup_bookeeping() to prune stale bookkeeping on\n  demand\n\n1.3 (July 3, 2013)\n\n - The global signal stash behind blinker.signal() is now backed by a\n   regular name-to-Signal dictionary. Previously, weak references were\n   held in the mapping and ephemeral usage in code like\n   ``signal('foo').connect(...)`` could have surprising program behavior\n   depending on import order of modules.\n - blinker.Namespace is now built on a regular dict. Use\n   blinker.WeakNamespace for the older, weak-referencing behavior.\n - Signal.connect('text-sender') uses an alternate hashing strategy to\n   avoid sharp edges in text identity.\n\n1.2 (October 26, 2011)\n\n - Added Signal.receiver_connected and Signal.receiver_disconnected\n   per-Signal signals.\n - Deprecated the global 'receiver_connected' signal.\n - Verified Python 3.2 support (no changes needed!)\n\n1.1 (July 21, 2010)\n\n - Added ``@signal.connect_via(sender)`` decorator\n - Added ``signal.connected_to`` shorthand name for the\n   ``temporarily_connected_to`` context manager.\n\n1.0 (March 28, 2010)\n\n - Python 3.x compatibility\n\n0.9 (February 26, 2010)\n\n - Sphinx docs, project website\n - Added ``with a_signal.temporarily_connected_to(receiver): ...`` support\n\n\n",
    "lcname": "blinker-alt",
    "name": "blinker-alt",
    "github": false,
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "Fast, simple object-to-object and broadcast signaling",
    "split_keywords": [
        "signal",
        "emit",
        "events",
        "broadcast"
    ],
    "author_email": "jek@discorporate.us",
    "urls": [
        {
            "has_sig": false,
            "upload_time": "2017-10-15T15:04:52",
            "comment_text": "",
            "python_version": "source",
            "url": "https://pypi.python.org/packages/4c/69/68741ce4881d6fa6b90d679f25c05e9568be13ab1a4a95c44c2dea2a9f20/blinker-alt-1.5.tar.gz",
            "md5_digest": "8c389fc9a077dc797f11773c2b16aa8f",
            "downloads": 0,
            "filename": "blinker-alt-1.5.tar.gz",
            "packagetype": "sdist",
            "path": "4c/69/68741ce4881d6fa6b90d679f25c05e9568be13ab1a4a95c44c2dea2a9f20/blinker-alt-1.5.tar.gz",
            "size": 21681
        },
        {
            "has_sig": false,
            "upload_time": "2017-10-15T15:04:50",
            "comment_text": "",
            "python_version": "py2.py3",
            "url": "https://pypi.python.org/packages/1b/64/0030a734ee44fa7c94c2e0a89487116f4c120ef2e62674067a28eab6a5ea/blinker_alt-1.5-py2.py3-none-any.whl",
            "md5_digest": "b7cd897913e63deee06186a3f5f329d3",
            "downloads": 0,
            "filename": "blinker_alt-1.5-py2.py3-none-any.whl",
            "packagetype": "bdist_wheel",
            "path": "1b/64/0030a734ee44fa7c94c2e0a89487116f4c120ef2e62674067a28eab6a5ea/blinker_alt-1.5-py2.py3-none-any.whl",
            "size": 15161
        }
    ],
    "cheesecake_installability_id": null
}
        
Elapsed time: 0.05303s