summaryrefslogtreecommitdiff
path: root/CHANGES.rst
blob: 463736a3000872fe57c2f8ab96771cdccfd4d70c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
Version 1.6.2
-------------

Released 2023-04-12

-   Type annotations are not evaluated at runtime. typing-extensions is not a runtime
    dependency. :pr:`94`

Version 1.6.1
-------------

Released 2023-04-09

-   Ensure that py.typed is present in the distributions (to enable other
    projects to use blinker's typing).
-   Require typing-extensions > 4.2 to ensure it includes
    ParamSpec. :issue:`90`

Version 1.6
-----------

Released 2023-04-02

-   Add a muted context manager to temporarily turn off a
    signal. :pr:`84`
-   Allow int senders (alongside existing string senders). :pr:`83`
-   Add a send_async method to the Signal to allow signals to send to
    coroutine receivers. :pr:`76`
-   Update and modernise the project structure to match that used by the
    pallets projects. :pr:`77`
-   Add an intial set of type hints for the project.

Version 1.5
-----------

Released 2022-07-17

-   Support Python >= 3.7 and PyPy. Python 2, Python < 3.7, and Jython
    may continue to work, but the next release will make incompatible
    changes.


Version 1.4
-----------

Released 2015-07-23

-   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.


Version 1.3
-----------

Released 2013-07-03

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


Version 1.2
-----------

Released 2011-10-26

-   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.


Version 1.1
-----------

Released 2010-07-21

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


Version 1.0
-----------

Released 2010-03-28

-   Python 3.0 and 3.1 compatibility.


Version 0.9
-----------

Released 2010-02-26

-   Added ``Signal.temporarily_connected_to`` context manager.
-   Docs! Sphinx docs, project web site.


Version 0.8
-----------

Released 2010-02-14

-   Initial release.
-   Extracted from ``flatland.util.signals``.
-   Added Python 2.4 compatibility.
-   Added nearly functional Python 3.1 compatibility. Everything except
    connecting to instance methods seems to work.