summaryrefslogtreecommitdiffstats
path: root/third_party/python/frozenlist/PKG-INFO
blob: 6ee3906b339f7777af1c8ab08124ab6246d836bc (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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
Metadata-Version: 2.1
Name: frozenlist
Version: 1.1.1
Summary: A list-like structure which implements collections.abc.MutableSequence
Home-page: https://github.com/aio-libs/frozenlist
Author: Nikolay Kim
Author-email: fafhrd91@gmail.com
Maintainer: Martijn Pieters <mj@zopatista.com>
Maintainer-email: aio-libs@googlegroups.com
License: Apache 2
Project-URL: Chat: Gitter, https://gitter.im/aio-libs/Lobby
Project-URL: CI: Github Actions, https://github.com/aio-libs/frozenlist/actions
Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/frozenlist
Project-URL: Docs: RTD, https://frozenlist.readthedocs.io
Project-URL: GitHub: issues, https://github.com/aio-libs/frozenlist/issues
Project-URL: GitHub: repo, https://github.com/aio-libs/frozenlist
Description: ==========
        frozenlist
        ==========
        
        .. image:: https://github.com/aio-libs/frozenlist/workflows/CI/badge.svg
           :target: https://github.com/aio-libs/frozenlist/actions
           :alt: GitHub status for master branch
        
        .. image:: https://codecov.io/gh/aio-libs/frozenlist/branch/master/graph/badge.svg
           :target: https://codecov.io/gh/aio-libs/frozenlist
           :alt: codecov.io status for master branch
        
        .. image:: https://badge.fury.io/py/frozenlist.svg
           :target: https://pypi.org/project/frozenlist
           :alt: Latest PyPI package version
        
        .. image:: https://readthedocs.org/projects/frozenlist/badge/?version=latest
           :target: https://frozenlist.readthedocs.io/
           :alt: Latest Read The Docs
        
        .. image:: https://img.shields.io/discourse/topics?server=https%3A%2F%2Faio-libs.discourse.group%2F
           :target: https://aio-libs.discourse.group/
           :alt: Discourse group for io-libs
        
        .. image:: https://badges.gitter.im/Join%20Chat.svg
           :target: https://gitter.im/aio-libs/Lobby
           :alt: Chat on Gitter
        
        Introduction
        ============
        
        ``frozenlist.FrozenList`` is a list-like structure which implements
        ``collections.abc.MutableSequence``. The list is *mutable* until ``FrozenList.freeze``
        is called, after which list modifications raise ``RuntimeError``:
        
        
        >>> from frozenlist import FrozenList
        >>> fl = FrozenList([17, 42])
        >>> fl.append('spam')
        >>> fl.append('Vikings')
        >>> fl
        <FrozenList(frozen=False, [17, 42, 'spam', 'Vikings'])>
        >>> fl.freeze()
        >>> fl
        <FrozenList(frozen=True, [17, 42, 'spam', 'Vikings'])>
        >>> fl.frozen
        True
        >>> fl.append("Monty")
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
          File "frozenlist/_frozenlist.pyx", line 97, in frozenlist._frozenlist.FrozenList.append
            self._check_frozen()
          File "frozenlist/_frozenlist.pyx", line 19, in frozenlist._frozenlist.FrozenList._check_frozen
            raise RuntimeError("Cannot modify frozen list.")
        RuntimeError: Cannot modify frozen list.
        
        
        FrozenList is also hashable, but only when frozen. Otherwise it also throws a RuntimeError:
        
        
        >>> fl = FrozenList([17, 42, 'spam'])
        >>> hash(fl)
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
          File "frozenlist/_frozenlist.pyx", line 111, in frozenlist._frozenlist.FrozenList.__hash__
            raise RuntimeError("Cannot hash unfrozen list.")
        RuntimeError: Cannot hash unfrozen list.
        >>> fl.freeze()
        >>> hash(fl)
        3713081631934410656
        >>> dictionary = {fl: 'Vikings'} # frozen fl can be a dict key
        >>> dictionary
        {<FrozenList(frozen=True, [1, 2])>: 'Vikings'}
        
        
        Installation
        ------------
        
        ::
        
           $ pip install frozenlist
        
        The library requires Python 3.6 or newer.
        
        
        Documentation
        =============
        
        https://frozenlist.readthedocs.io/
        
        Communication channels
        ======================
        
        *aio-libs discourse group*: https://aio-libs.discourse.group
        
        Feel free to post your questions and ideas here.
        
        *gitter chat* https://gitter.im/aio-libs/Lobby
        
        Requirements
        ============
        
        - Python >= 3.6
        
        License
        =======
        
        ``frozenlist`` is offered under the Apache 2 license.
        
        Source code
        ===========
        
        The project is hosted on GitHub_
        
        Please file an issue in the `bug tracker
        <https://github.com/aio-libs/frozenlist/issues>`_ if you have found a bug
        or have some suggestions to improve the library.
        
        .. _GitHub: https://github.com/aio-libs/frozenlist
        
        =========
        Changelog
        =========
        
        ..
            You should *NOT* be adding new change log entries to this file, this
            file is managed by towncrier. You *may* edit previous change logs to
            fix problems like typo corrections or such.
            To add a new change log entry, please see
            https://pip.pypa.io/en/latest/development/contributing/#news-entries
            we named the news folder "changes".
        
            WARNING: Don't drop the next directive!
        
        .. towncrier release notes start
        
        1.1.1 (2020-11-14)
        ==================
        
        Bugfixes
        --------
        
        - Provide x86 Windows wheels.
          `#169 <https://github.com/aio-libs/frozenlist/issues/169>`_
        
        
        ----
        
        
        1.1.0 (2020-10-13)
        ==================
        
        Features
        --------
        
        - Add support for hashing of a frozen list.
          `#136 <https://github.com/aio-libs/frozenlist/issues/136>`_
        
        - Support Python 3.8 and 3.9.
        
        - Provide wheels for ``aarch64``, ``i686``, ``ppc64le``, ``s390x`` architectures on
          Linux as well as ``x86_64``.
        
        
        ----
        
        
        1.0.0 (2019-11-09)
        ==================
        
        Deprecations and Removals
        -------------------------
        
        - Dropped support for Python 3.5; only 3.6, 3.7 and 3.8 are supported going forward.
          `#24 <https://github.com/aio-libs/frozenlist/issues/24>`_
Platform: UNKNOWN
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Development Status :: 5 - Production/Stable
Classifier: Operating System :: POSIX
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Requires-Python: >=3.6
Description-Content-Type: text/x-rst