pythonic-fp.iterables 3.0.0__tar.gz → 4.0.0__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.
@@ -0,0 +1,190 @@
1
+ CHANGELOG
2
+ =========
3
+
4
+ PyPI pythonic-fp.iterables project.
5
+
6
+ Semantic Versioning
7
+ -------------------
8
+
9
+ Strict 3 digit semantic versioning adopted 2025-05-19.
10
+
11
+ - **MAJOR** version incremented for incompatible API changes
12
+ - **MINOR** version incremented for backward compatible added functionality
13
+ - **PATCH** version incremented for backward compatible bug fixes
14
+
15
+ See `Semantic Versioning 2.0.0 <https://semver.org>`_.
16
+
17
+ Releases and Important Milestones
18
+ ---------------------------------
19
+
20
+ 4.0.0 - 2025-07-16
21
+ ~~~~~~~~~~~~~~~~~~
22
+
23
+ Primary purpose was to bring Sphinx documentation in alignment
24
+ with other pythonic-fp projects. Ended up making substantial
25
+ Sphinx documentation improvements. Will use this documentation
26
+ for the other pythonic-fp projects.
27
+
28
+ - API change
29
+
30
+ - renamed pythonic_fp.iterables.foldl to pythonic_fp.iterables.fold_left
31
+
32
+ 3.0.0 - 2025-07-06
33
+ ~~~~~~~~~~~~~~~~~~
34
+
35
+ First PyPI release as ``pythonic-fp.iterables``
36
+
37
+ - dropping dtools namespace name because there is a repo by that name.
38
+
39
+ 2.0.0 - 2025-05-22
40
+ ~~~~~~~~~~~~~~~~~~
41
+
42
+ - Moved dtools.fp.iterables to its own PyPI project
43
+
44
+ - dtools.iterables
45
+
46
+ - Moved dtools.fp.err_handling to the dtools.containers PyPI project
47
+
48
+ - Moved class MayBe -> module dtools.containers.maybe
49
+ - Moved class Xor -> module dtools.containers.xor
50
+ - dropped lazy methods
51
+
52
+ - will import dtools.fp.lazy directly for this functionality
53
+
54
+ 1.7.0 - 2025-04-22
55
+ ~~~~~~~~~~~~~~~~~~
56
+
57
+ Last PyPI release as dtools.fp
58
+
59
+ - API changes along the lines of dtools.ca 3.12
60
+ - typing improvements
61
+ - docstring changes
62
+ - pyproject.toml standardization
63
+
64
+ 1.6.0 - 2025-04-07
65
+ ~~~~~~~~~~~~~~~~~~
66
+
67
+ - typing improvements
68
+
69
+ 1.4.0 - 2025-03-16
70
+ ~~~~~~~~~~~~~~~~~~
71
+
72
+ - much work dtools.iterables
73
+
74
+ - finally implemented scReduceL and scReduceR functions
75
+ - tweaked API across iterables module
76
+
77
+ 1.3.0 - 2025-01-17
78
+ ~~~~~~~~~~~~~~~~~~
79
+
80
+ First release as dtools.fp
81
+
82
+ Repo name changes.
83
+
84
+ - GitHub: fp -> dtools-fp
85
+ - PyPI: grscheller.fp -> dtools.fp
86
+
87
+ 1.0.1 - 2024-10-20
88
+ ~~~~~~~~~~~~~~~~~~
89
+
90
+ - removed docs from repo
91
+ - docs for all grscheller namespace projects maintained here
92
+
93
+ - https://grscheller.github.io/grscheller-pypi-namespace-docs/
94
+
95
+ 1.0.0 - 2024-10-18
96
+ ~~~~~~~~~~~~~~~~~~
97
+
98
+ Decided to make this release first stable release.
99
+
100
+ - renamed module fp.woException to fp.err_handling
101
+ - pytest improvements based on pytest documentation
102
+
103
+ 0.4.0 - 2024-10-03
104
+ ~~~~~~~~~~~~~~~~~~
105
+
106
+ Long overdue PyPI release.
107
+
108
+ 0.3.4.0 - 2024-09-30
109
+ ~~~~~~~~~~~~~~~~~~~~
110
+
111
+ Development environment only.
112
+
113
+ - API change for fp.iterables
114
+
115
+ - function name changes
116
+
117
+ - ``foldL``, ``foldR``, ``foldLsc``, ``foldRsc``
118
+ - ``sc`` stands for "short circuit"
119
+
120
+ - all now return class woException.MB
121
+
122
+ 0.3.3.7 - 2024-09-22
123
+ ~~~~~~~~~~~~~~~~~~~~
124
+
125
+ Development environment only.
126
+
127
+ - added more functions to fp.iterables module
128
+
129
+ - take(it: Iterable[D], n: int) -> Iterator[D]
130
+ - takeWhile(it: Iterable[D], pred: Callable\[[D], bool\]) -> Iterator[D]
131
+ - drop(it: Iterable[D], n: int) -> Iterator[D]
132
+ - dropWhile(it: Iterable[D], pred: Callable\[[D], bool\]) -> Iterator[D]
133
+
134
+ 0.3.3.4 - 2024-09-16
135
+ ~~~~~~~~~~~~~~~~~~~~
136
+
137
+ Development environment only.
138
+
139
+ - fp.iterables ``foldL_sc`` & ``foldR_sc`` now have
140
+
141
+ - common paradigm
142
+ - similar signatures
143
+
144
+ 0.3.3.3 - 2024-09-15
145
+ ~~~~~~~~~~~~~~~~~~~~
146
+
147
+ Development environment only.
148
+
149
+ - added fp.iterables function ``foldR_sc``
150
+
151
+ - shortcut version of ``foldR``
152
+ - not fully tested
153
+ - docstring not updated
154
+
155
+ 0.3.3.2 - 2024-09-14
156
+ ~~~~~~~~~~~~~~~~~~~~
157
+
158
+ Development environment only.
159
+
160
+ - added fp.iterables function ``foldL_sc``
161
+
162
+ - shortcut version of foldL
163
+
164
+ 0.3.1 - 2024-08-20
165
+ ~~~~~~~~~~~~~~~~~~
166
+
167
+ Now fp.iterables no longer exports ``CONCAT``, ``MERGE``, ``EXHAUST``.
168
+
169
+ - for grscheller.datastructures
170
+
171
+ - grscheller.datastructures.ftuple
172
+ - grscheller.datastructures.split_ends
173
+
174
+ 0.2.0 - 2024-07-26
175
+ ~~~~~~~~~~~~~~~~~~
176
+
177
+ - from last PyPI release
178
+
179
+ - added accumulate function to fp.iterators
180
+
181
+ - overall much better docstrings
182
+
183
+ 0.1.0 - 2024-07-11
184
+ ~~~~~~~~~~~~~~~~~~
185
+
186
+ Initial PyPI release as grscheller.fp
187
+
188
+ Replicated functionality from grscheller.datastructures.
189
+
190
+ - ``grscheller.core.iterlib -> grscheller.fp.iterators``
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pythonic-fp.iterables
3
- Version: 3.0.0
4
- Summary: Module fp.iterables - Iterator related tools
3
+ Version: 4.0.0
4
+ Summary: Library of functions for iterating iterables.
5
5
  Keywords: iterables,iterators
6
6
  Author-email: "Geoffrey R. Scheller" <geoffrey@scheller.com>
7
7
  Requires-Python: >=3.12
@@ -17,8 +17,8 @@ License-File: LICENSE
17
17
  Requires-Dist: pythonic-fp.circulararray>=5.0.0
18
18
  Requires-Dist: pythonic-fp.containers >=2.0.0
19
19
  Requires-Dist: pythonic-fp.fptools >=3.0.0
20
- Project-URL: Changelog, https://grscheller.github.io/pythonic-fp-iterables/html/changelog.html
21
- Project-URL: Documentation, https://grscheller.github.io/pythonic-fp-iterables/html/
20
+ Project-URL: Changelog, https://github.com/grscheller/pythonic-fp-iterables/blob/main/CHANGELOG.rst
21
+ Project-URL: Documentation, https://grscheller.github.io/pythonic-fp/iterables/API/development/build/html/releases.html
22
22
  Project-URL: Homepage, https://github.com/grscheller/pythonic-fp/blob/main/README.md
23
23
  Project-URL: Source, https://github.com/grscheller/pythonic-fp-iterables
24
24
 
@@ -26,24 +26,29 @@ Project-URL: Source, https://github.com/grscheller/pythonic-fp-iterables
26
26
 
27
27
  PyPI project
28
28
  [pythonic-fp.iterators](https://pypi.org/project/pythonic-fp.iterables/)
29
- implementing a Python package of tools for iterables and iterators.
29
+ implementing a Python library of functions for iterables and iterators.
30
30
 
31
31
  - Concatenating and merging iterables
32
32
  - Dropping and taking values from iterables
33
33
  - Reducing and accumulating iterables
34
- - Assumptions
35
- - iterables are not necessarily iterators
36
- - at all times iterator protocol is assumed to be followed
37
- - all iterators are assumed to be iterable
38
- - for all iterators `my_iter` we assume `iter(my_iter) is my_iter`
34
+
35
+ #### Info:
36
+
37
+ This library assumes that at all times iterator protocol
38
+ is followed. This means that all iterators are iterable and
39
+ that ``iter(some_iterator) is some_iterator``.
40
+
41
+ #### Note:
42
+
43
+ Iterables are not necessarily iterators.
39
44
 
40
45
  This PyPI project is part of of the grscheller
41
46
  [pythonic-fp namespace projects](https://github.com/grscheller/pythonic-fp/blob/main/README.md).
42
47
 
43
48
  ## Documentation
44
49
 
45
- Documentation hosted on
46
- [GitHub Pages](https://grscheller.github.io/pythonic-fp-iterables/html).
50
+ Documentation for this PyPI projects is hosted on
51
+ [GitHub Pages](https://grscheller.github.io/pythonic-fp/iterators/API/development/build/html/releases.html).
47
52
 
48
53
  ## Copyright and License
49
54
 
@@ -2,24 +2,29 @@
2
2
 
3
3
  PyPI project
4
4
  [pythonic-fp.iterators](https://pypi.org/project/pythonic-fp.iterables/)
5
- implementing a Python package of tools for iterables and iterators.
5
+ implementing a Python library of functions for iterables and iterators.
6
6
 
7
7
  - Concatenating and merging iterables
8
8
  - Dropping and taking values from iterables
9
9
  - Reducing and accumulating iterables
10
- - Assumptions
11
- - iterables are not necessarily iterators
12
- - at all times iterator protocol is assumed to be followed
13
- - all iterators are assumed to be iterable
14
- - for all iterators `my_iter` we assume `iter(my_iter) is my_iter`
10
+
11
+ #### Info:
12
+
13
+ This library assumes that at all times iterator protocol
14
+ is followed. This means that all iterators are iterable and
15
+ that ``iter(some_iterator) is some_iterator``.
16
+
17
+ #### Note:
18
+
19
+ Iterables are not necessarily iterators.
15
20
 
16
21
  This PyPI project is part of of the grscheller
17
22
  [pythonic-fp namespace projects](https://github.com/grscheller/pythonic-fp/blob/main/README.md).
18
23
 
19
24
  ## Documentation
20
25
 
21
- Documentation hosted on
22
- [GitHub Pages](https://grscheller.github.io/pythonic-fp-iterables/html).
26
+ Documentation for this PyPI projects is hosted on
27
+ [GitHub Pages](https://grscheller.github.io/pythonic-fp/iterators/API/development/build/html/releases.html).
23
28
 
24
29
  ## Copyright and License
25
30
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "pythonic-fp.iterables"
3
- version = "3.0.0"
3
+ version = "4.0.0"
4
4
  readme = "README.md"
5
5
  requires-python = ">=3.12"
6
6
  license = { file = "LICENSE" }
@@ -23,8 +23,8 @@ dependencies = [
23
23
  dynamic = ["description"]
24
24
 
25
25
  [project.urls]
26
- Changelog = "https://grscheller.github.io/pythonic-fp-iterables/html/changelog.html"
27
- Documentation = "https://grscheller.github.io/pythonic-fp-iterables/html/"
26
+ Changelog = "https://github.com/grscheller/pythonic-fp-iterables/blob/main/CHANGELOG.rst"
27
+ Documentation = "https://grscheller.github.io/pythonic-fp/iterables/API/development/build/html/releases.html"
28
28
  Homepage = "https://github.com/grscheller/pythonic-fp/blob/main/README.md"
29
29
  Source = "https://github.com/grscheller/pythonic-fp-iterables"
30
30
 
@@ -33,7 +33,7 @@ requires = ["flit_core>=3.12,<4"]
33
33
  build-backend = "flit_core.buildapi"
34
34
 
35
35
  [tool.flit.sdist]
36
- exclude = ["dist", "docs", "tests", ".gitignore", ".mypy_cache", ".pytest_cache"]
36
+ exclude = ["dist", "tests", ".gitignore", ".mypy_cache", ".pytest_cache"]
37
37
 
38
38
  [tool.mypy]
39
39
  enable_incomplete_feature = ["NewGenericSyntax"]
@@ -43,14 +43,6 @@ warn_redundant_casts = true
43
43
  warn_return_any = true
44
44
  warn_unused_configs = true
45
45
 
46
- [tool.pylsp]
47
- python_path = [
48
- "/home/grs/devel/pypi/fptools/pythonic-fp-iterables/src",
49
- "/home/grs/devel/pypi/fptools/pythonic-fp-circulararray/src",
50
- "/home/grs/devel/pypi/fptools/pythonic-fp-containers/src",
51
- "/home/grs/devel/pypi/fptools/pythonic-fp-fptools/src",
52
- ]
53
-
54
46
  [tool.pylsp-mypy]
55
47
  enabled = true
56
48
  live-mode = true