renumerate 1.3.4__tar.gz → 1.4.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.

Potentially problematic release.


This version of renumerate might be problematic. Click here for more details.

Files changed (29) hide show
  1. {renumerate-1.3.4 → renumerate-1.4.0}/CHANGES.rst +9 -0
  2. {renumerate-1.3.4 → renumerate-1.4.0}/MANIFEST.in +1 -1
  3. {renumerate-1.3.4 → renumerate-1.4.0}/PKG-INFO +13 -4
  4. {renumerate-1.3.4 → renumerate-1.4.0}/docs/conf.py +4 -2
  5. {renumerate-1.3.4 → renumerate-1.4.0}/pyproject.toml +55 -22
  6. renumerate-1.4.0/src/renumerate/__init__.py +6 -0
  7. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate/_renumerate.py +6 -1
  8. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/PKG-INFO +13 -4
  9. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/SOURCES.txt +1 -0
  10. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/requires.txt +3 -3
  11. renumerate-1.4.0/tests/data/.keep +0 -0
  12. renumerate-1.3.4/src/renumerate/__init__.py +0 -6
  13. {renumerate-1.3.4 → renumerate-1.4.0}/.readthedocs.yml +0 -0
  14. {renumerate-1.3.4 → renumerate-1.4.0}/LICENSE +0 -0
  15. {renumerate-1.3.4 → renumerate-1.4.0}/README.rst +0 -0
  16. {renumerate-1.3.4 → renumerate-1.4.0}/docs/CHANGES.rst +0 -0
  17. {renumerate-1.3.4 → renumerate-1.4.0}/docs/README.rst +0 -0
  18. {renumerate-1.3.4 → renumerate-1.4.0}/docs/_static/.keep +0 -0
  19. {renumerate-1.3.4 → renumerate-1.4.0}/docs/_templates/.keep +0 -0
  20. {renumerate-1.3.4 → renumerate-1.4.0}/docs/index.rst +0 -0
  21. {renumerate-1.3.4 → renumerate-1.4.0}/setup.cfg +0 -0
  22. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate/__about__.py +0 -0
  23. /renumerate-1.3.4/tests/data/.keep → /renumerate-1.4.0/src/renumerate/py.typed +0 -0
  24. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/dependency_links.txt +0 -0
  25. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/top_level.txt +0 -0
  26. {renumerate-1.3.4 → renumerate-1.4.0}/src/renumerate.egg-info/zip-safe +0 -0
  27. {renumerate-1.3.4 → renumerate-1.4.0}/tests/__init__.py +0 -0
  28. {renumerate-1.3.4 → renumerate-1.4.0}/tests/__main__.py +0 -0
  29. {renumerate-1.3.4 → renumerate-1.4.0}/tests/test_main.py +0 -0
@@ -1,6 +1,15 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ 1.4.0 (2025-08-15)
5
+ ------------------
6
+ - Making the package typed.
7
+ - Setup (dependencies) update.
8
+
9
+ 1.3.5 (2025-07-07)
10
+ ------------------
11
+ - Setup (dependencies) update.
12
+
4
13
  1.3.4 (2025-06-11)
5
14
  ------------------
6
15
  - Setup (dependencies) update.
@@ -15,4 +15,4 @@ graft tests
15
15
 
16
16
  global-exclude \#* \#*/**
17
17
  global-exclude .build .build/** .build.* .build.*/**
18
- global-exclude *.py[cod] __pycache__
18
+ global-exclude *.py[cod] __pycache__ .mypy_cache
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: renumerate
3
- Version: 1.3.4
3
+ Version: 1.4.0
4
4
  Summary: Reverse enumerate.
5
5
  Author: Adam Karpierz
6
6
  Author-email: adam@karpierz.net
@@ -33,7 +33,7 @@ Requires-Python: <4.0.0,>=3.10.0
33
33
  Description-Content-Type: text/x-rst; charset=UTF-8
34
34
  License-File: LICENSE
35
35
  Requires-Dist: setuptools>=80.9.0
36
- Requires-Dist: pkg-about>=1.3.6
36
+ Requires-Dist: pkg-about>=1.4.0
37
37
  Provides-Extra: doc
38
38
  Requires-Dist: Sphinx>=8.1.3; extra == "doc"
39
39
  Requires-Dist: sphinx-autodoc-typehints>=3.0.1; extra == "doc"
@@ -45,8 +45,8 @@ Requires-Dist: sphinx-lint>=1.0.0; extra == "doc"
45
45
  Requires-Dist: restructuredtext-lint>=1.4.0; extra == "doc"
46
46
  Requires-Dist: nbsphinx>=0.9.7; extra == "doc"
47
47
  Provides-Extra: test
48
- Requires-Dist: deepdiff>=8.5.0; extra == "test"
49
- Requires-Dist: rich>=14.0.0; extra == "test"
48
+ Requires-Dist: deepdiff>=8.6.0; extra == "test"
49
+ Requires-Dist: rich>=14.1.0; extra == "test"
50
50
  Dynamic: license-file
51
51
 
52
52
  renumerate
@@ -177,6 +177,15 @@ Authors
177
177
  Changelog
178
178
  =========
179
179
 
180
+ 1.4.0 (2025-08-15)
181
+ ------------------
182
+ - Making the package typed.
183
+ - Setup (dependencies) update.
184
+
185
+ 1.3.5 (2025-07-07)
186
+ ------------------
187
+ - Setup (dependencies) update.
188
+
180
189
  1.3.4 (2025-06-11)
181
190
  ------------------
182
191
  - Setup (dependencies) update.
@@ -4,9 +4,11 @@
4
4
  # list see the documentation:
5
5
  # https://www.sphinx-doc.org/en/master/usage/configuration.html
6
6
 
7
- __import__("pkg_about").about_from_setup()
7
+ from sphinx import application
8
8
 
9
- def setup(app):
9
+ about = __import__("pkg_about").about_from_setup()
10
+
11
+ def setup(app: application.Sphinx) -> None:
10
12
  pass
11
13
 
12
14
  # -- Path setup --------------------------------------------------------------
@@ -3,11 +3,11 @@
3
3
 
4
4
  [build-system]
5
5
  build-backend = 'setuptools.build_meta'
6
- requires = ['setuptools>=80.9.0', 'packaging>=25.0.0', 'tox>=4.26.0']
6
+ requires = ['setuptools>=80.9.0', 'packaging>=25.0.0', 'tox>=4.28.4']
7
7
 
8
8
  [project]
9
9
  name = 'renumerate'
10
- version = '1.3.4'
10
+ version = '1.4.0'
11
11
  description = 'Reverse enumerate.'
12
12
  authors = [
13
13
  { name = 'Adam Karpierz' },
@@ -46,7 +46,7 @@ requires-python = '>=3.10.0,<4.0.0'
46
46
  dependencies = [
47
47
  # mandatory
48
48
  'setuptools>=80.9.0',
49
- 'pkg-about>=1.3.6',
49
+ 'pkg-about>=1.4.0',
50
50
  # others
51
51
  ]
52
52
  dynamic = ['readme']
@@ -62,8 +62,8 @@ optional-dependencies.'doc' = [
62
62
  'nbsphinx>=0.9.7',
63
63
  ]
64
64
  optional-dependencies.'test' = [
65
- 'deepdiff>=8.5.0',
66
- 'rich>=14.0.0',
65
+ 'deepdiff>=8.6.0',
66
+ 'rich>=14.1.0',
67
67
  ]
68
68
 
69
69
  [project.scripts]
@@ -107,12 +107,13 @@ run.source = [
107
107
  'tests',
108
108
  ]
109
109
  run.omit = [
110
+ '**/tests/tman_*.py',
110
111
  ]
111
112
  run.branch = true
112
113
  run.data_file = '.tox/coverage/.coverage'
113
114
  run.plugins = ['covdefaults']
114
115
  # report
115
- report.exclude_lines = [
116
+ report.exclude_also = [
116
117
  # Regexes
117
118
  # Have to re-enable the standard pragma
118
119
  '^\s*if\s+self\.debug\s*:',
@@ -121,6 +122,7 @@ report.exclude_lines = [
121
122
  '''if\s+__name__.*\s*==\s*['"]__main__['"]\s*:''',
122
123
  '^\s*@unittest\.skip\(',
123
124
  '^\s*@unittest\.skipIf\(sys\.platform\.startswith\("win"\)',
125
+ 'if typing.TYPE_CHECKING:',
124
126
  ]
125
127
  report.omit = [
126
128
  'tests/run.py',
@@ -135,7 +137,7 @@ filename = ['*.py','*.pyx']
135
137
  #exclude = ['.tox','*.egg','.git','__pycache__','build','_build','docs/_build','dist']
136
138
  max-line-length = 99
137
139
  ignore = ['E126','E203','E221','E251','E302','E701','E702','E731',
138
- 'E122','E127','E128','E222','E272','E241','E266','E226','E704',
140
+ 'E122','E127','E128','E222','E272','E241','E266','E226',
139
141
  'D100','D101','D102','D103','D104','D400','D401','D202',
140
142
  'N806','N802','N803','N801',
141
143
  'I100','W503']
@@ -149,23 +151,39 @@ count = true
149
151
  #verbose
150
152
  #quiet
151
153
 
154
+ [tool.mypy]
155
+ python_version = '3.10'
156
+ strict = true
157
+ sqlite_cache = true
158
+ warn_unused_configs = true
159
+ exclude_gitignore = true
160
+ install_types = true
161
+ non_interactive = true
162
+ pretty = true
163
+ check_untyped_defs = true
164
+ #ignore_missing_imports = true
165
+ files = ['src']
166
+ #exclude = ["docs/", "tests/"]
167
+
152
168
  #
153
169
  # Configuration(s) for tox
154
170
  #
155
171
 
156
172
  [tool.tox]
157
- env_list = [{replace='ref',of=['tool','tox','labels','py'],extend=true}, 'coverage', 'lint', 'docs']
158
- min_version = '4.26.0'
173
+ env_list = [{replace='ref',of=['tool','tox','labels','py'],extend=true},
174
+ 'coverage', 'typing', 'lint', 'docs']
175
+ min_version = '4.28.4'
159
176
  skip_missing_interpreters = true
160
177
  requires = [
161
178
  {replace='ref',of=['tool','tox','_','base','deps'],extend=true},
162
- 'virtualenv>=20.31.2',
163
- 'tox-backtick>=0.6.4',
179
+ 'virtualenv>=20.34.0',
180
+ 'tox-backtick>=0.7.0',
164
181
  ]
165
182
  [tool.tox.labels]
166
183
  py = ['py310','py311','py312','py313','py314', 'pypy310','pypy311']
167
- prepare = ['prepare']
184
+ prepare = ['prepare']
168
185
  coverage = ['coverage']
186
+ typing = ['typing']
169
187
  lint = ['lint']
170
188
  docs = ['docs']
171
189
  build = [{replace='ref',of=['tool','tox','labels','py'],extend=true}, 'docs', 'build']
@@ -174,14 +192,15 @@ deploy = [{replace='ref',of=['tool','tox','labels','build'],extend=true}, 'publi
174
192
  [tool.tox._.base]
175
193
  base_python = ['python3.13']
176
194
  deps = [
177
- 'pip>=25.1.1',
195
+ 'pip>=25.2',
178
196
  'setuptools>=80.9.0',
179
197
  ]
180
198
  package_subdir = 'renumerate'
181
199
 
182
200
  [tool.tox.env_run_base]
183
- description = "Run tests under {base_python}"
201
+ description = 'Run tests under {base_python}'
184
202
  set_env.PYTHONDONTWRITEBYTECODE = '1'
203
+ set_env.PKG_IMPL = "`python -W ignore -c \"import platform ; pimpl = platform.python_implementation() ; print('cp' if pimpl == 'CPython' else 'pp' if pimpl == 'PyPy' else '', end='')\" 2> nul`"
185
204
  set_env.PKG_PVER = "`python -W ignore -c \"import platform ; print(''.join(platform.python_version_tuple()[:2]), end='')\" 2> nul`"
186
205
  set_env.PKG_NAME = "`python -W ignore -c \"import setuptools ; setuptools._distutils.core._setup_stop_after='config' ; print(setuptools.setup().metadata.get_name(), end='')\" 2> nul`"
187
206
  set_env.PKG_DIST = "`python -W ignore -c \"import setuptools ; setuptools._distutils.core._setup_stop_after='config' ; print(setuptools.setup().metadata.get_fullname(), end='')\" 2> nul`"
@@ -211,22 +230,22 @@ deps = []
211
230
  base_python = {replace='ref',of=['tool','tox','_','base','base_python']}
212
231
  commands = [
213
232
  ['{env_python}','-m','coverage','erase'],
214
- ['-','{env_python}','-m','coverage','run','-m','tests',{replace="posargs",extend=true}],
233
+ ['-','{env_python}','-m','coverage','run','-m','tests',{replace='posargs',extend=true}],
215
234
  ['-','{env_python}','-m','coverage','html'],
216
235
  ['{env_python}','-m','coverage','report'],
217
236
  ]
218
237
  deps = [
219
238
  {replace='ref',of=['tool','tox','env_run_base','deps'],extend=true},
220
- 'coverage>=7.8.2',
239
+ 'coverage>=7.10.4',
221
240
  'covdefaults>=2.3.0',
222
- 'diff-cover>=9.3.2',
241
+ 'diff-cover>=9.6.0',
223
242
  ]
224
243
 
225
244
  [tool.tox.env.'docs']
226
245
  base_python = {replace='ref',of=['tool','tox','_','base','base_python']}
227
246
  commands = [
228
247
  ['{env_python}','-m','sphinxlint','--ignore','.tox','--ignore','build','--ignore','dist'],
229
- #['{env_python}','-m','sphinx.apidoc','-f','{envsitepackagesdir}/{[tool.tox._.base]package_subdir}'],
248
+ #['{env_python}','-m','sphinx.apidoc','-f','{env_site_packages_dir}/{[tool.tox._.base]package_subdir}'],
230
249
  ['{env_python}','-m','sphinx.cmd.build','-W','-a','-b','html','-E','./docs','./build/docs/html'],
231
250
  ['{env_python}','-m','sphinx.cmd.build','-W','-a','-b','linkcheck','./docs','./build/docs/html'],
232
251
  ['{env_python}','-m','sphinx.cmd.build','-W','-a','-b','doctest', './docs','./build/docs/html'],
@@ -246,7 +265,7 @@ commands = [
246
265
  ]
247
266
  deps = [
248
267
  {replace='ref',of=['tool','tox','env_run_base','deps'],extend=true},
249
- 'build>=1.2.2.post1',
268
+ 'build>=1.3.0',
250
269
  'twine>=6.1.0',
251
270
  ]
252
271
 
@@ -263,18 +282,32 @@ deps = [
263
282
  'twine>=6.1.0',
264
283
  ]
265
284
 
285
+ [tool.tox.env.'typing']
286
+ description = 'Static type checking'
287
+ base_python = {replace='ref',of=['tool','tox','_','base','base_python']}
288
+ commands = [
289
+ ['{env_python}','-m','mypy'],
290
+ ]
291
+ extras = []
292
+ deps = [
293
+ 'mypy>=1.17.1',
294
+ 'mypy_extensions>=1.1.0',
295
+ 'types-setuptools>=80.9.0.20250809',
296
+ ]
297
+
266
298
  [tool.tox.env.'lint']
267
299
  base_python = {replace='ref',of=['tool','tox','_','base','base_python']}
268
300
  commands = [
269
- ['{env_python}','-m','flake8','{envsitepackagesdir}/{[tool.tox._.base]package_subdir}/'],
301
+ ['{env_python}','-m','flake8','{env_site_packages_dir}/{[tool.tox._.base]package_subdir}/'],
270
302
  ]
271
303
  extras = []
272
304
  deps = [
273
305
  {replace='ref',of=['tool','tox','env_run_base','deps'],extend=true},
274
- 'flake8>=7.2.0',
306
+ 'flake8>=7.3.0',
307
+ 'flake8-in-file-ignores>=0.3.0',
275
308
  'flake8-pyproject>=1.2.3',
276
309
  'flake8-docstrings>=1.7.0',
277
310
  'pep8-naming>=0.15.1',
278
- 'flake8-builtins>=2.5.0',
311
+ 'flake8-builtins>=3.0.0',
279
312
  'flake8-deprecated>=2.2.1',
280
313
  ]
@@ -0,0 +1,6 @@
1
+ # Copyright (c) 2016 Adam Karpierz
2
+ # SPDX-License-Identifier: Zlib
3
+
4
+ from .__about__ import * ; del __about__ # type: ignore[name-defined] # noqa
5
+
6
+ from ._renumerate import * ; del _renumerate # type: ignore[name-defined] # noqa
@@ -3,8 +3,13 @@
3
3
 
4
4
  __all__ = ('renumerate',)
5
5
 
6
+ from typing import Any
7
+ from collections.abc import Sequence, Generator
6
8
 
7
- def renumerate(sequence, start=None, end=None):
9
+
10
+ def renumerate(sequence: Sequence[Any],
11
+ start: int | None = None,
12
+ end: int | None = None) -> Generator[tuple[int, Any]]:
8
13
  """Reverse iterator for index, value of sequence.
9
14
 
10
15
  renumerate(sequence[, start]|[, end]) -> reverse iterator
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: renumerate
3
- Version: 1.3.4
3
+ Version: 1.4.0
4
4
  Summary: Reverse enumerate.
5
5
  Author: Adam Karpierz
6
6
  Author-email: adam@karpierz.net
@@ -33,7 +33,7 @@ Requires-Python: <4.0.0,>=3.10.0
33
33
  Description-Content-Type: text/x-rst; charset=UTF-8
34
34
  License-File: LICENSE
35
35
  Requires-Dist: setuptools>=80.9.0
36
- Requires-Dist: pkg-about>=1.3.6
36
+ Requires-Dist: pkg-about>=1.4.0
37
37
  Provides-Extra: doc
38
38
  Requires-Dist: Sphinx>=8.1.3; extra == "doc"
39
39
  Requires-Dist: sphinx-autodoc-typehints>=3.0.1; extra == "doc"
@@ -45,8 +45,8 @@ Requires-Dist: sphinx-lint>=1.0.0; extra == "doc"
45
45
  Requires-Dist: restructuredtext-lint>=1.4.0; extra == "doc"
46
46
  Requires-Dist: nbsphinx>=0.9.7; extra == "doc"
47
47
  Provides-Extra: test
48
- Requires-Dist: deepdiff>=8.5.0; extra == "test"
49
- Requires-Dist: rich>=14.0.0; extra == "test"
48
+ Requires-Dist: deepdiff>=8.6.0; extra == "test"
49
+ Requires-Dist: rich>=14.1.0; extra == "test"
50
50
  Dynamic: license-file
51
51
 
52
52
  renumerate
@@ -177,6 +177,15 @@ Authors
177
177
  Changelog
178
178
  =========
179
179
 
180
+ 1.4.0 (2025-08-15)
181
+ ------------------
182
+ - Making the package typed.
183
+ - Setup (dependencies) update.
184
+
185
+ 1.3.5 (2025-07-07)
186
+ ------------------
187
+ - Setup (dependencies) update.
188
+
180
189
  1.3.4 (2025-06-11)
181
190
  ------------------
182
191
  - Setup (dependencies) update.
@@ -13,6 +13,7 @@ docs/_templates/.keep
13
13
  src/renumerate/__about__.py
14
14
  src/renumerate/__init__.py
15
15
  src/renumerate/_renumerate.py
16
+ src/renumerate/py.typed
16
17
  src/renumerate.egg-info/PKG-INFO
17
18
  src/renumerate.egg-info/SOURCES.txt
18
19
  src/renumerate.egg-info/dependency_links.txt
@@ -1,5 +1,5 @@
1
1
  setuptools>=80.9.0
2
- pkg-about>=1.3.6
2
+ pkg-about>=1.4.0
3
3
 
4
4
  [doc]
5
5
  Sphinx>=8.1.3
@@ -13,5 +13,5 @@ restructuredtext-lint>=1.4.0
13
13
  nbsphinx>=0.9.7
14
14
 
15
15
  [test]
16
- deepdiff>=8.5.0
17
- rich>=14.0.0
16
+ deepdiff>=8.6.0
17
+ rich>=14.1.0
File without changes
@@ -1,6 +0,0 @@
1
- # Copyright (c) 2016 Adam Karpierz
2
- # SPDX-License-Identifier: Zlib
3
-
4
- from .__about__ import * ; del __about__ # noqa
5
-
6
- from ._renumerate import * ; del _renumerate # noqa
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes