pythonic-fp.containers 3.0.1__tar.gz → 4.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/CHANGELOG.rst +184 -197
- pythonic_fp_containers-4.0.1/PKG-INFO +62 -0
- pythonic_fp_containers-4.0.1/README.rst +35 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/pyproject.toml +8 -14
- pythonic_fp_containers-4.0.1/src/pythonic_fp/containers/__init__.py +31 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/src/pythonic_fp/containers/functional_tuple.py +45 -33
- pythonic_fp_containers-4.0.1/src/pythonic_fp/containers/functional_tuple.pyi +22 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/src/pythonic_fp/containers/immutable_list.py +42 -43
- pythonic_fp_containers-4.0.1/src/pythonic_fp/containers/immutable_list.pyi +28 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/tests/test_immutable_list_fp.py +0 -18
- pythonic_fp_containers-3.0.1/PKG-INFO +0 -62
- pythonic_fp_containers-3.0.1/README.rst +0 -34
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/__init__.py +0 -31
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/functional_tuple.pyi +0 -58
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/immutable_list.pyi +0 -72
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/__init__.py +0 -31
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/de.py +0 -178
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/de.pyi +0 -45
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/fifo.py +0 -143
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/fifo.pyi +0 -44
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/lifo.py +0 -134
- pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues/lifo.pyi +0 -40
- pythonic_fp_containers-3.0.1/tests/queues/test_queues.py +0 -558
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/.gitignore +0 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/LICENSE +0 -0
- /pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/py.typed → /pythonic_fp_containers-4.0.1/src/pythonic_fp/containers/__init__.pyi +0 -0
- {pythonic_fp_containers-3.0.1/src/pythonic_fp/containers/queues → pythonic_fp_containers-4.0.1/src/pythonic_fp/containers}/py.typed +0 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/tests/test_functional_tuple.py +0 -0
- {pythonic_fp_containers-3.0.1 → pythonic_fp_containers-4.0.1}/tests/test_immutable_list.py +0 -0
|
@@ -17,8 +17,20 @@ See `Semantic Versioning 2.0.0 <https://semver.org>`_.
|
|
|
17
17
|
Releases and Important Milestones
|
|
18
18
|
---------------------------------
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
PyPI 4.0.0 - 2025-09-09
|
|
21
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
22
|
+
|
|
23
|
+
Decided not to deprecated pythonic-fp.queues and moved queue development
|
|
24
|
+
back to there.
|
|
25
|
+
|
|
26
|
+
PyPI 3.0.1 - 2025-09-09
|
|
27
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
28
|
+
|
|
29
|
+
- added .pyi files
|
|
30
|
+
- updated Sphinx docs to new format
|
|
31
|
+
|
|
32
|
+
PyPI 3.0.0 - 2025-08-02
|
|
33
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
22
34
|
|
|
23
35
|
Coordinated entire project pythonic-fp PyPI deployment.
|
|
24
36
|
|
|
@@ -27,15 +39,15 @@ Coordinated entire project pythonic-fp PyPI deployment.
|
|
|
27
39
|
|
|
28
40
|
- deprecating pythonic-fp.queues
|
|
29
41
|
|
|
30
|
-
2.0.0 - 2025-07-06
|
|
31
|
-
|
|
42
|
+
PyPI 2.0.0 - 2025-07-06
|
|
43
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
32
44
|
|
|
33
45
|
First PyPI release as pythonic-fp.containers
|
|
34
46
|
|
|
35
47
|
- switched from pdoc to Sphinx for docstring documentation generation.
|
|
36
48
|
|
|
37
|
-
1.0.0 - 2025-05-22
|
|
38
|
-
|
|
49
|
+
PyPI 1.0.0 - 2025-05-22
|
|
50
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
39
51
|
|
|
40
52
|
First PyPI release as dtools.containers
|
|
41
53
|
|
|
@@ -45,15 +57,15 @@ First PyPI release as dtools.containers
|
|
|
45
57
|
- maybe.py -> implements the "maybe" monad from FP
|
|
46
58
|
- xor.py -> implements a left biased either monad from FP
|
|
47
59
|
|
|
48
|
-
0.27.1 - 2025-04-22
|
|
49
|
-
|
|
60
|
+
PyPI 0.27.1 - 2025-04-22
|
|
61
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
50
62
|
|
|
51
63
|
- replaced camelCaseNames method names with snake_case_names
|
|
52
64
|
- docstring changes
|
|
53
65
|
- pyproject.toml standardization
|
|
54
66
|
|
|
55
|
-
0.27.0 - 2025-04-07
|
|
56
|
-
|
|
67
|
+
PyPI 0.27.0 - 2025-04-07
|
|
68
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
57
69
|
|
|
58
70
|
- first PyPI release as dtools.tuples
|
|
59
71
|
|
|
@@ -64,26 +76,26 @@ First PyPI release as dtools.containers
|
|
|
64
76
|
|
|
65
77
|
- typing improvements
|
|
66
78
|
|
|
67
|
-
0.25.1 - 2025-01-16
|
|
68
|
-
|
|
79
|
+
PyPI 0.25.1 - 2025-01-16
|
|
80
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
69
81
|
|
|
70
82
|
- Fixed pdoc issues with new typing notation
|
|
71
83
|
|
|
72
84
|
- updated docstrings
|
|
73
85
|
- had to add TypeVars
|
|
74
86
|
|
|
75
|
-
0.25.0 - 2025-01-17
|
|
76
|
-
|
|
87
|
+
PyPI 0.25.0 - 2025-01-17
|
|
88
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
77
89
|
|
|
78
90
|
- First release under dtools.datastructures name
|
|
79
91
|
|
|
80
|
-
0.24.0 - 2024-11-18
|
|
81
|
-
|
|
92
|
+
PyPI 0.24.0 - 2024-11-18
|
|
93
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
82
94
|
|
|
83
95
|
- Changed flatMap to bind thru out project
|
|
84
96
|
|
|
85
|
-
0.23.1 - 2024-11-18
|
|
86
|
-
|
|
97
|
+
PyPI 0.23.1 - 2024-11-18
|
|
98
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
87
99
|
|
|
88
100
|
- Fixed bug with datastructures.tuple module
|
|
89
101
|
|
|
@@ -97,15 +109,15 @@ First PyPI release as dtools.containers
|
|
|
97
109
|
|
|
98
110
|
- ``FT[D](*ds: D) -> ftuple[D]``
|
|
99
111
|
|
|
100
|
-
0.22.1 - 2024-10-20
|
|
101
|
-
|
|
112
|
+
PyPI 0.22.1 - 2024-10-20
|
|
113
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
102
114
|
|
|
103
115
|
Removed docs from repo. Documentation for all grscheller namespace
|
|
104
116
|
projects is now maintained
|
|
105
117
|
here: https://grscheller.github.io/grscheller-pypi-namespace-docs/
|
|
106
118
|
|
|
107
|
-
0.22.0 - 2024-10-18
|
|
108
|
-
|
|
119
|
+
PyPI 0.22.0 - 2024-10-18
|
|
120
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
109
121
|
|
|
110
122
|
- made classes in nodes module less passive with better encapsulation
|
|
111
123
|
- compatible with:
|
|
@@ -113,8 +125,8 @@ here: https://grscheller.github.io/grscheller-pypi-namespace-docs/
|
|
|
113
125
|
- grscheller.fp >= 1.0.0 < 1.0.1
|
|
114
126
|
- grscheller.circular-array >= 3.6.1 < 3.7
|
|
115
127
|
|
|
116
|
-
0.21.0 - 2024-08-20
|
|
117
|
-
|
|
128
|
+
PyPI 0.21.0 - 2024-08-20
|
|
129
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
118
130
|
|
|
119
131
|
Got back to a state maintainer is happy with. Many dependencies needed
|
|
120
132
|
updating first.
|
|
@@ -122,8 +134,8 @@ updating first.
|
|
|
122
134
|
- works with all the current versions of fp and circular-array
|
|
123
135
|
- preparing for PyPI 0.21.0 release
|
|
124
136
|
|
|
125
|
-
0.20.5.0 - 2024-08-17
|
|
126
|
-
|
|
137
|
+
Version 0.20.5.0 - 2024-08-17
|
|
138
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
127
139
|
|
|
128
140
|
Development environment only. Datastructures coming back together
|
|
129
141
|
|
|
@@ -141,8 +153,8 @@ Development environment only. Datastructures coming back together
|
|
|
141
153
|
- need to find good SplitEnd use case
|
|
142
154
|
- other Stack variants like SplintEnd??? (shared data/node variants?)
|
|
143
155
|
|
|
144
|
-
0.20.2.0 - 2024-08-03
|
|
145
|
-
|
|
156
|
+
PyPI 0.20.2.0 - 2024-08-03
|
|
157
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
146
158
|
|
|
147
159
|
Development environment only.
|
|
148
160
|
Still preparing for 1.0.0 datastructures release.
|
|
@@ -154,27 +166,27 @@ Still preparing for 1.0.0 datastructures release.
|
|
|
154
166
|
- using `@overload` to "untype" optional parameters is the way to go
|
|
155
167
|
- use `cast` only when you have knowledge beyond what the typechecker can know
|
|
156
168
|
|
|
157
|
-
0.19.0 - 2024-07-15
|
|
158
|
-
|
|
169
|
+
PyPI 0.19.0 - 2024-07-15
|
|
170
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
159
171
|
|
|
160
172
|
- continuing to prepare for PyPI release 1.0.0
|
|
161
173
|
- cleaned up docstrings for a 1.0.0 release
|
|
162
174
|
- changed accumulate1 to accumulate for FTuple
|
|
163
175
|
- considering requiring grscheller.fp as a dependency
|
|
164
176
|
|
|
165
|
-
0.18.0.0 -
|
|
166
|
-
|
|
177
|
+
Version 0.18.0.0 - Devel environment only
|
|
178
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
167
179
|
|
|
168
|
-
|
|
180
|
+
Beginning to prepare for PyPI release 1.0.0
|
|
169
181
|
|
|
170
182
|
- first devel version requiring circular-array 3.1.0
|
|
171
183
|
- still some design work to be done
|
|
172
184
|
- TODO: Verify flatMap family yields results in "natural" order
|
|
173
185
|
|
|
174
|
-
0.17.0.4 -
|
|
175
|
-
|
|
186
|
+
Version 0.17.0.4 - Devel environment only
|
|
187
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
176
188
|
|
|
177
|
-
|
|
189
|
+
Start of effort to relax None restrictions.
|
|
178
190
|
|
|
179
191
|
- have begun relaxing the requirement of not storing None as a value
|
|
180
192
|
|
|
@@ -183,10 +195,10 @@ Devel environment only.
|
|
|
183
195
|
- requires grscheller.circular-array >= 3.0.3.0
|
|
184
196
|
- perhaps next PyPI release will be v1.0.0 ???
|
|
185
197
|
|
|
186
|
-
0.16.0.0 -
|
|
187
|
-
|
|
198
|
+
Version 0.16.0.0 - Devel environment only
|
|
199
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
188
200
|
|
|
189
|
-
|
|
201
|
+
Preparing to support PEP 695 generics.
|
|
190
202
|
|
|
191
203
|
- Requires Python >= 3.12
|
|
192
204
|
- preparing to support PEP 695 generics
|
|
@@ -201,18 +213,18 @@ Devel environment only.
|
|
|
201
213
|
- map methods now return copies
|
|
202
214
|
- THEREFORE: tests need to be completely overhauled
|
|
203
215
|
|
|
204
|
-
0.14.1.1 -
|
|
205
|
-
|
|
216
|
+
Version 0.14.1.1 - Devel environment only
|
|
217
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
206
218
|
|
|
207
|
-
|
|
219
|
+
Preparing to add TypeVars.
|
|
208
220
|
|
|
209
221
|
- tests working with grscheller.circular-array >= 3.0.0, \<3.2
|
|
210
222
|
|
|
211
223
|
- lots of mypy complaints
|
|
212
224
|
- first version using TypeVars will be 0.15.0.0
|
|
213
225
|
|
|
214
|
-
0.14.0 - 2024-03-09
|
|
215
|
-
|
|
226
|
+
PyPI 0.14.0 - 2024-03-09
|
|
227
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
216
228
|
|
|
217
229
|
- updated dependency on CircularArray class
|
|
218
230
|
|
|
@@ -221,10 +233,10 @@ Devel environment only.
|
|
|
221
233
|
- minor README.md wordsmithing
|
|
222
234
|
- keeping project an Alpha release for now
|
|
223
235
|
|
|
224
|
-
0.13.3.1 -
|
|
225
|
-
|
|
236
|
+
Version 0.13.3.1 - Devel environment only
|
|
237
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
226
238
|
|
|
227
|
-
|
|
239
|
+
Preparing for another PyPI release soon.
|
|
228
240
|
|
|
229
241
|
- overhauled docstrings with Markdown markup
|
|
230
242
|
- updated pyproject.py to drop project back to an Alpha release
|
|
@@ -244,15 +256,15 @@ Devel environment only.
|
|
|
244
256
|
|
|
245
257
|
- use foldL instead
|
|
246
258
|
|
|
247
|
-
0.13.2 - 2024-02-20
|
|
248
|
-
|
|
259
|
+
PyPI 0.13.2 - 2024-02-20
|
|
260
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
249
261
|
|
|
250
262
|
Forgot to update pyproject.toml dependencies.
|
|
251
263
|
|
|
252
264
|
- ``dependencies = ["grscheller.circular-array >= 0.1.1, < 1.1"]``
|
|
253
265
|
|
|
254
|
-
0.13.1 - 2024-01-31
|
|
255
|
-
|
|
266
|
+
PyPI 0.13.1 - 2024-01-31
|
|
267
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
256
268
|
|
|
257
269
|
- FTuple now supports both slicing and indexing
|
|
258
270
|
|
|
@@ -264,8 +276,8 @@ Forgot to update pyproject.toml dependencies.
|
|
|
264
276
|
|
|
265
277
|
- forgot to update CHANGELOG for v0.13.0 release
|
|
266
278
|
|
|
267
|
-
0.13.0 - 2024-01-30
|
|
268
|
-
|
|
279
|
+
PyPI 0.13.0 - 2024-01-30
|
|
280
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
269
281
|
|
|
270
282
|
- BREAKING API CHANGE - CircularArray class removed
|
|
271
283
|
- CircularArray moved to its own PyPI & GitHub repos
|
|
@@ -275,8 +287,8 @@ Forgot to update pyproject.toml dependencies.
|
|
|
275
287
|
|
|
276
288
|
- Fix various out-of-date docstrings
|
|
277
289
|
|
|
278
|
-
0.12.3 - 2024-01-20
|
|
279
|
-
|
|
290
|
+
PyPI 0.12.3 - 2024-01-20
|
|
291
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
280
292
|
|
|
281
293
|
- cutting next PyPI release from development (main)
|
|
282
294
|
|
|
@@ -286,36 +298,36 @@ Forgot to update pyproject.toml dependencies.
|
|
|
286
298
|
- will include ``tests/``
|
|
287
299
|
- made pytest >= 7.4 an optional test dependency
|
|
288
300
|
|
|
289
|
-
0.12.2 - 2024-01-17
|
|
290
|
-
|
|
301
|
+
PyPI 0.12.2 - 2024-01-17
|
|
302
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
291
303
|
|
|
292
304
|
- fixed Stack reverse() method
|
|
293
305
|
|
|
294
306
|
- should have caught this when I fixed FStack on last PyPI release
|
|
295
307
|
- more Stack tests
|
|
296
308
|
|
|
297
|
-
0.12.1 - 2024-01-15
|
|
298
|
-
|
|
309
|
+
PyPI 0.12.1 - 2024-01-15
|
|
310
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
299
311
|
|
|
300
312
|
- BUG FIX: FStack reverse() method
|
|
301
313
|
- added more tests
|
|
302
314
|
|
|
303
|
-
0.12.0 -
|
|
304
|
-
|
|
315
|
+
PyPI 0.12.0 - 2024-01-14
|
|
316
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
305
317
|
|
|
306
318
|
- Considerable future-proofing for first real Beta release
|
|
307
319
|
|
|
308
|
-
0.11.3.4 -
|
|
309
|
-
|
|
320
|
+
Version 0.11.3.4 - Devel environment only
|
|
321
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
310
322
|
|
|
311
|
-
|
|
323
|
+
Finally decided to make next PyPI release Beta
|
|
312
324
|
|
|
313
325
|
- Package structure mature and not subject to change beyond additions
|
|
314
326
|
- Will endeavor to keep top level & core module names the same
|
|
315
327
|
- API changes will be deprecated before removed
|
|
316
328
|
|
|
317
|
-
0.11.0 - 2023-12-20
|
|
318
|
-
|
|
329
|
+
PyPI 0.11.0 - 2023-12-20
|
|
330
|
+
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
319
331
|
|
|
320
332
|
- A lot of work done on class CLArray
|
|
321
333
|
|
|
@@ -326,124 +338,113 @@ Devel environment only.
|
|
|
326
338
|
|
|
327
339
|
- mostly for the freedom to rename and restructure the package
|
|
328
340
|
|
|
329
|
-
0.10.17.0+
|
|
330
|
-
|
|
341
|
+
Version 0.10.17.0+ - 2023-12-17 (Devel environment only)
|
|
342
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
331
343
|
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
- Second release candidate - probably will become next PyPI release
|
|
335
|
-
|
|
336
|
-
- main now development branch, release will be release branch
|
|
337
|
-
- decided to drop it back to Alpha
|
|
338
|
-
|
|
339
|
-
- making datastructures a Beta release was premature
|
|
340
|
-
- classifier "Development Status :: 3 - Alpha"
|
|
341
|
-
|
|
342
|
-
- will cut next PyPI release with Flit from release branch
|
|
343
|
-
- will need to regenerate docs on release & move to main
|
|
344
|
-
- things to add in main before next release
|
|
345
|
-
|
|
346
|
-
- will not make ``Maybe`` or ``Nothing`` a singleton
|
|
347
|
-
- last touched ``CLArray`` refactor
|
|
348
|
-
- improve ``CLArray`` test coverage
|
|
344
|
+
Second release candidate (0.11.0-RC2). Probably will
|
|
345
|
+
become next PyPI release.
|
|
349
346
|
|
|
350
|
-
|
|
347
|
+
- main now development branch, release will be release branch
|
|
348
|
+
- decided to drop it back to Alpha
|
|
351
349
|
|
|
352
|
-
|
|
353
|
-
|
|
350
|
+
- making datastructures a Beta release was premature
|
|
351
|
+
- classifier "Development Status :: 3 - Alpha"
|
|
354
352
|
|
|
355
|
-
|
|
356
|
-
|
|
353
|
+
- will cut next PyPI release with Flit from release branch
|
|
354
|
+
- will need to regenerate docs on release & move to main
|
|
355
|
+
- things to add in main before next release
|
|
357
356
|
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
-
|
|
361
|
-
|
|
362
|
-
- will cut next PyPI release with Flit from main branch
|
|
363
|
-
- removed docs directory before merge (docs/ will be main only)
|
|
364
|
-
- things to add in main before next release
|
|
357
|
+
- will not make ``Maybe`` or ``Nothing`` a singleton
|
|
358
|
+
- last touched ``CLArray`` refactor
|
|
359
|
+
- improve ``CLArray`` test coverage
|
|
365
360
|
|
|
366
|
-
|
|
367
|
-
- derive FTuple from Tuple (use ``__new__``) for performance boost
|
|
368
|
-
- simplify CLArray to use a Queue instead of CircularArray & iterator
|
|
369
|
-
- start using ``__slots__`` for performance boost to data structures
|
|
361
|
+
- Things for future PYPI releases
|
|
370
362
|
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
- smaller size & quicker method/attribute lookups
|
|
374
|
-
- big difference when dealing with huge number of data structures
|
|
363
|
+
- inherit ``FTuple`` from ``Tuple`` (use ``__new__``) for performance boost
|
|
364
|
+
- hold off using ``__slots__`` until I understand them better
|
|
375
365
|
|
|
376
|
-
0.10.14.
|
|
377
|
-
|
|
366
|
+
Version 0.10.14.2 - 2023-12-11 (Devel environment only)
|
|
367
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
378
368
|
|
|
379
|
-
|
|
369
|
+
First release candidate (0.11.0-RC1). Unlikely this will be
|
|
370
|
+
the next PyPI release.
|
|
380
371
|
|
|
381
|
-
-
|
|
372
|
+
- will cut next PyPI release with Flit from main branch
|
|
373
|
+
- removed docs directory before merge (docs/ will be main only)
|
|
374
|
+
- things to add in main before next release
|
|
382
375
|
|
|
383
|
-
-
|
|
384
|
-
-
|
|
385
|
-
-
|
|
376
|
+
- make Maybe Nothing a singleton (use ``__new__``)
|
|
377
|
+
- derive FTuple from Tuple (use ``__new__``) for performance boost
|
|
378
|
+
- simplify CLArray to use a Queue instead of CircularArray & iterator
|
|
379
|
+
- start using ``__slots__`` for performance boost to data structures
|
|
386
380
|
|
|
387
|
-
-
|
|
381
|
+
- efficiency trumps extensibility
|
|
382
|
+
- prevents client code adding arbitrary attributes & methods
|
|
383
|
+
- smaller size & quicker method/attribute lookups
|
|
384
|
+
- big difference when dealing with huge number of data structures
|
|
388
385
|
|
|
389
|
-
|
|
386
|
+
Version 0.10.14.0 - 2023-12-09 (Devel environment only)
|
|
387
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
390
388
|
|
|
391
|
-
|
|
389
|
+
Finished massive renaming & repackaging effort
|
|
392
390
|
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
391
|
+
- to help with future growth in future
|
|
392
|
+
- name choices more self-documenting
|
|
393
|
+
- top level modules
|
|
396
394
|
|
|
397
|
-
|
|
395
|
+
- array
|
|
398
396
|
|
|
399
|
-
|
|
400
|
-
- ``FStack``
|
|
397
|
+
- ``CLArray``
|
|
401
398
|
|
|
402
|
-
|
|
399
|
+
- queue
|
|
403
400
|
|
|
404
|
-
|
|
401
|
+
- ``FIFOQueue`` (formerly ``SQueue``)
|
|
402
|
+
- ``LIFOQueue`` (LIFO version of above)
|
|
403
|
+
- ``DoubleQueue`` (formerly ``DQueue``)
|
|
405
404
|
|
|
406
|
-
|
|
407
|
-
~~~~~~~~~~~~~~~~~~~~~~
|
|
405
|
+
- stack
|
|
408
406
|
|
|
409
|
-
|
|
407
|
+
- ``Stack`` (formerly ``PStack``)
|
|
408
|
+
- ``FStack``
|
|
410
409
|
|
|
411
|
-
-
|
|
410
|
+
- tuple-like
|
|
412
411
|
|
|
413
|
-
|
|
412
|
+
- ``FTuple``
|
|
414
413
|
|
|
415
|
-
|
|
414
|
+
Version 0.10.11.0 - 2023-11-27 (Devel environment only)
|
|
415
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
416
416
|
|
|
417
|
-
|
|
417
|
+
Created new datastructures class ``CLArray``. Made package
|
|
418
|
+
overall more "atomic".
|
|
418
419
|
|
|
419
|
-
|
|
420
|
-
- ``map`` method mutates ``self``
|
|
421
|
-
- can be resized
|
|
422
|
-
- returns false when ``CLArray`` contains no non-``()`` elements
|
|
420
|
+
- more imperative version of ``FCLArray``
|
|
423
421
|
|
|
424
|
-
-
|
|
422
|
+
- has an iterator to swap None values instead of a default value
|
|
425
423
|
|
|
426
|
-
-
|
|
424
|
+
- when iterator is exhausted, will swap in ``()`` for ``None``
|
|
427
425
|
|
|
428
|
-
|
|
429
|
-
|
|
426
|
+
- no ``flatMap`` type methods
|
|
427
|
+
- ``map`` method mutates ``self``
|
|
428
|
+
- can be resized
|
|
429
|
+
- returns false when ``CLArray`` contains no non-``()`` elements
|
|
430
430
|
|
|
431
|
-
|
|
431
|
+
- TODO: does not yet handle StopIteration events properly
|
|
432
432
|
|
|
433
|
-
|
|
433
|
+
Version 0.10.10.0 - 2023-11-26 (Devel environment only)
|
|
434
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
434
435
|
|
|
435
|
-
|
|
436
|
-
- need ``mergeMap`` & ``exhaustMap`` versions of unit tests
|
|
437
|
-
- found this data structure very interesting
|
|
436
|
+
More or less finalized ``FCLArray`` API.
|
|
438
437
|
|
|
439
|
-
|
|
438
|
+
- finished overriding default ``flatMap``, ``mergeMap`` & ``exhaustMap`` from FP
|
|
439
|
+
- need ``mergeMap`` & ``exhaustMap`` versions of unit tests
|
|
440
|
+
- found this data structure very interesting
|
|
440
441
|
|
|
441
|
-
-
|
|
442
|
+
- hopefully find a use for it
|
|
442
443
|
|
|
443
|
-
|
|
444
|
-
~~~~~~~~~~~~~~~~~~~~~
|
|
444
|
+
- considering a simpler ``CLArray`` version
|
|
445
445
|
|
|
446
|
-
Devel environment only
|
|
446
|
+
Version 0.10.8.0 - 2023-11-18 (Devel environment only)
|
|
447
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
447
448
|
|
|
448
449
|
- Bumping requires-python = ">=3.11" in pyproject.toml
|
|
449
450
|
|
|
@@ -454,10 +455,8 @@ Devel environment only.
|
|
|
454
455
|
- tests pass but are 4X slower
|
|
455
456
|
- LSP almost useless due to more primitive typing module
|
|
456
457
|
|
|
457
|
-
0.10.7.0 - 2023-11-18
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
Devel environment only.
|
|
458
|
+
Version 0.10.7.0 - 2023-11-18 (Devel environment only)
|
|
459
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
461
460
|
|
|
462
461
|
- Overhauled ``__repr__`` & ``__str__`` methods for all classes
|
|
463
462
|
|
|
@@ -474,8 +473,8 @@ Devel environment only.
|
|
|
474
473
|
|
|
475
474
|
- Updated markdown overview documentation
|
|
476
475
|
|
|
477
|
-
0.10.1.0 - 2023-11-11
|
|
478
|
-
|
|
476
|
+
Version 0.10.1.0 - 2023-11-11 (Devel environment only)
|
|
477
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
479
478
|
|
|
480
479
|
Devel environment only.
|
|
481
480
|
|
|
@@ -486,8 +485,8 @@ Devel environment only.
|
|
|
486
485
|
|
|
487
486
|
- some restructuring so package will scale better in the future
|
|
488
487
|
|
|
489
|
-
0.9.1 - 2023-11-09
|
|
490
|
-
|
|
488
|
+
PyPI 0.9.1 - 2023-11-09
|
|
489
|
+
~~~~~~~~~~~~~~~~~~~~~~~
|
|
491
490
|
|
|
492
491
|
- First Beta release of grscheller.datastructures on PyPI
|
|
493
492
|
- Infrastructure stable
|
|
@@ -506,8 +505,8 @@ Devel environment only.
|
|
|
506
505
|
- Monad transformers???
|
|
507
506
|
- Need to use this package in other projects to gain insight
|
|
508
507
|
|
|
509
|
-
0.8.4.0 - 2023-11-03
|
|
510
|
-
|
|
508
|
+
Version 0.8.4.0 - 2023-11-03 (Devel environment only)
|
|
509
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
511
510
|
|
|
512
511
|
Devel environment only.
|
|
513
512
|
|
|
@@ -516,8 +515,8 @@ Devel environment only.
|
|
|
516
515
|
- wrapped tuple with a FP interface
|
|
517
516
|
- initial minimal viable product
|
|
518
517
|
|
|
519
|
-
0.8.3.0 - 2023-11-02
|
|
520
|
-
|
|
518
|
+
Version 0.8.3.0 - 2023-11-02 (Devel environment only)
|
|
519
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
521
520
|
|
|
522
521
|
Devel environment only.
|
|
523
522
|
|
|
@@ -532,8 +531,8 @@ Devel environment only.
|
|
|
532
531
|
|
|
533
532
|
- tests now work
|
|
534
533
|
|
|
535
|
-
0.8.0.0 - 2023-10-28
|
|
536
|
-
|
|
534
|
+
Version 0.8.0.0 - 2023-10-28 (Devel environment only)
|
|
535
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
537
536
|
|
|
538
537
|
Devel environment only.
|
|
539
538
|
|
|
@@ -546,8 +545,8 @@ Devel environment only.
|
|
|
546
545
|
- decided to use pdoc3 over sphinx to generate API documentation
|
|
547
546
|
- need to resolve tension of package being Pythonic and Functional
|
|
548
547
|
|
|
549
|
-
0.7.5.0 - 2023-10-26
|
|
550
|
-
|
|
548
|
+
PyPI 0.7.5.0 - 2023-10-26
|
|
549
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
551
550
|
|
|
552
551
|
- moved pytest test suite to root of the repo
|
|
553
552
|
|
|
@@ -556,8 +555,8 @@ Devel environment only.
|
|
|
556
555
|
|
|
557
556
|
- instructions to run test suite in ``tests/__init__.py``
|
|
558
557
|
|
|
559
|
-
0.7.4.0 - 2023-10-25
|
|
560
|
-
|
|
558
|
+
Version 0.7.4.0 - 2023-10-25 (Devel environment only)
|
|
559
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
561
560
|
|
|
562
561
|
Devel environment only.
|
|
563
562
|
|
|
@@ -566,22 +565,18 @@ Devel environment only.
|
|
|
566
565
|
- Major API changes
|
|
567
566
|
- Still tagging it an Alpha release
|
|
568
567
|
|
|
569
|
-
0.7.0.0 - 2023-10-16
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
Devel environment only.
|
|
573
|
-
|
|
574
|
-
- updated README.md
|
|
568
|
+
Version 0.7.0.0 - 2023-10-16 (Devel environment only)
|
|
569
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
575
570
|
|
|
576
|
-
|
|
571
|
+
Updated README.md file.
|
|
577
572
|
|
|
578
|
-
|
|
579
|
-
- objects "contain" their data -> FP methods mutate object
|
|
573
|
+
- foreshadowing making a distinction between
|
|
580
574
|
|
|
581
|
-
|
|
582
|
-
|
|
575
|
+
- objects "sharing" their data -> FP methods return copies
|
|
576
|
+
- objects "contain" their data -> FP methods mutate object
|
|
583
577
|
|
|
584
|
-
Devel environment only
|
|
578
|
+
Version 0.6.9.0 - 2023-10-09 (Devel environment only)
|
|
579
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
585
580
|
|
|
586
581
|
- renamed core module to iterlib module
|
|
587
582
|
|
|
@@ -596,10 +591,8 @@ Devel environment only.
|
|
|
596
591
|
- removed Stack's ``__getitem__`` method
|
|
597
592
|
- both pop and push/append from end
|
|
598
593
|
|
|
599
|
-
0.2.2.2 - 2023-09-04
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
PyPI release.
|
|
594
|
+
PyPI 0.2.2.2 - 2023-09-04
|
|
595
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
603
596
|
|
|
604
597
|
- decided base package should have no dependencies other than
|
|
605
598
|
|
|
@@ -612,10 +605,8 @@ PyPI release.
|
|
|
612
605
|
- https://packaging.python.org/en/latest/tutorials/packaging-projects/
|
|
613
606
|
- could not do the same for tests/ if end users are to have access
|
|
614
607
|
|
|
615
|
-
0.2.1.0 - 2023-09-03
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
PyPI release.
|
|
608
|
+
PyPI 0.2.1.0 - 2023-09-03
|
|
609
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
619
610
|
|
|
620
611
|
- first Version uploaded to PyPI
|
|
621
612
|
- https://pypi.org/project/grscheller.datastructures/
|
|
@@ -640,28 +631,24 @@ PyPI release.
|
|
|
640
631
|
|
|
641
632
|
- for CI/CD pipelines requiring unit testing
|
|
642
633
|
|
|
643
|
-
0.2.0.2 - 2023-08-29
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
GitHub only release date.
|
|
634
|
+
Version 0.2.0.2 - 2023-08-29 (GitHub only)
|
|
635
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
647
636
|
|
|
648
637
|
- First version able to be installed from GitHub with pip
|
|
649
638
|
- ``$ pip install git+https://github.com/grscheller/datastructures@v0.2.0.2``
|
|
650
639
|
|
|
651
|
-
0.1.1.0 - 2023-08-27
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
Devel environment only.
|
|
640
|
+
Version 0.1.1.0 - 2023-08-27 (Devel environment only)
|
|
641
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
655
642
|
|
|
656
643
|
- grscheller.datastructures moved to its own GitHub repo
|
|
657
644
|
- https://github.com/grscheller/datastructures
|
|
658
645
|
|
|
659
646
|
- GitHub and PyPI user names just a happy coincidence
|
|
660
647
|
|
|
661
|
-
0.1.0.0 - 2023-08-27
|
|
662
|
-
|
|
648
|
+
Version 0.1.0.0 - 2023-08-27 (Devel environment only)
|
|
649
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
663
650
|
|
|
664
|
-
Initial version
|
|
651
|
+
Initial version.
|
|
665
652
|
|
|
666
653
|
- Package implementing data structures which do not throw exceptions
|
|
667
654
|
- Did not push to PyPI until version 0.2.1.0
|