annotate 2.1.0__tar.gz → 2.2.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.
Files changed (28) hide show
  1. {annotate-2.1.0 → annotate-2.2.0}/CHANGES.rst +6 -1
  2. {annotate-2.1.0/src/annotate.egg-info → annotate-2.2.0}/PKG-INFO +3 -2
  3. {annotate-2.1.0 → annotate-2.2.0}/noxfile.py +17 -27
  4. {annotate-2.1.0 → annotate-2.2.0}/pyproject.toml +9 -8
  5. {annotate-2.1.0 → annotate-2.2.0/src/annotate.egg-info}/PKG-INFO +3 -2
  6. {annotate-2.1.0 → annotate-2.2.0}/src/annotate.egg-info/requires.txt +1 -1
  7. {annotate-2.1.0 → annotate-2.2.0}/LICENSE +0 -0
  8. {annotate-2.1.0 → annotate-2.2.0}/MANIFEST.in +0 -0
  9. {annotate-2.1.0 → annotate-2.2.0}/README.rst +0 -0
  10. {annotate-2.1.0 → annotate-2.2.0}/docs/CHANGES.rst +0 -0
  11. {annotate-2.1.0 → annotate-2.2.0}/docs/README.rst +0 -0
  12. {annotate-2.1.0 → annotate-2.2.0}/docs/_static/.keep +0 -0
  13. {annotate-2.1.0 → annotate-2.2.0}/docs/_templates/.keep +0 -0
  14. {annotate-2.1.0 → annotate-2.2.0}/docs/conf.py +0 -0
  15. {annotate-2.1.0 → annotate-2.2.0}/docs/index.rst +0 -0
  16. {annotate-2.1.0 → annotate-2.2.0}/setup.cfg +0 -0
  17. {annotate-2.1.0 → annotate-2.2.0}/src/annotate/__about__.py +0 -0
  18. {annotate-2.1.0 → annotate-2.2.0}/src/annotate/__init__.py +0 -0
  19. {annotate-2.1.0 → annotate-2.2.0}/src/annotate/_annotate.py +0 -0
  20. {annotate-2.1.0 → annotate-2.2.0}/src/annotate/py.typed +0 -0
  21. {annotate-2.1.0 → annotate-2.2.0}/src/annotate.egg-info/SOURCES.txt +0 -0
  22. {annotate-2.1.0 → annotate-2.2.0}/src/annotate.egg-info/dependency_links.txt +0 -0
  23. {annotate-2.1.0 → annotate-2.2.0}/src/annotate.egg-info/top_level.txt +0 -0
  24. {annotate-2.1.0 → annotate-2.2.0}/src/annotate.egg-info/zip-safe +0 -0
  25. {annotate-2.1.0 → annotate-2.2.0}/tests/__init__.py +0 -0
  26. {annotate-2.1.0 → annotate-2.2.0}/tests/__main__.py +0 -0
  27. {annotate-2.1.0 → annotate-2.2.0}/tests/data/.keep +0 -0
  28. {annotate-2.1.0 → annotate-2.2.0}/tests/test_main.py +0 -0
@@ -1,7 +1,12 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
- 2.1.0 (2026-01-20)
4
+ 2.2.0 (2026-02-13)
5
+ ------------------
6
+ - Added support for Python 3.15
7
+ - Setup update (mainly dependencies).
8
+
9
+ 2.1.1 (2026-01-26)
5
10
  ------------------
6
11
  - Marked the package as typed.
7
12
  - 100% code coverage.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: annotate
3
- Version: 2.1.0
3
+ Version: 2.2.0
4
4
  Summary: Decorator to set a function's __annotations__ like Py3.
5
5
  Author-email: Adam Karpierz <adam@karpierz.net>
6
6
  Maintainer-email: Adam Karpierz <adam@karpierz.net>
@@ -25,6 +25,7 @@ Classifier: Programming Language :: Python :: 3.11
25
25
  Classifier: Programming Language :: Python :: 3.12
26
26
  Classifier: Programming Language :: Python :: 3.13
27
27
  Classifier: Programming Language :: Python :: 3.14
28
+ Classifier: Programming Language :: Python :: 3.15
28
29
  Classifier: Programming Language :: Python :: 3 :: Only
29
30
  Classifier: Programming Language :: Python :: Implementation :: CPython
30
31
  Classifier: Programming Language :: Python :: Implementation :: PyPy
@@ -34,7 +35,7 @@ Requires-Python: <4.0.0,>=3.10.0
34
35
  Description-Content-Type: text/x-rst; charset=UTF-8
35
36
  License-File: LICENSE
36
37
  Requires-Dist: typing-extensions>=4.15.0
37
- Requires-Dist: pkg-about>=2.1.0
38
+ Requires-Dist: pkg-about>=2.2.0
38
39
  Dynamic: license-file
39
40
 
40
41
  annotate
@@ -1,8 +1,8 @@
1
- # Copyright (c) 2025 Adam Karpierz
1
+ # Copyright (c) 2026 Adam Karpierz
2
2
  # SPDX-License-Identifier: Zlib
3
3
 
4
4
  # /// script
5
- # dependencies = ["nox>=2025.11.12", "packaging>=26.0.0"]
5
+ # dependencies = ["nox>=2026.2.9", "nox_ext", "nox_lib"]
6
6
  # ///
7
7
 
8
8
  from __future__ import annotations
@@ -18,9 +18,7 @@ import warnings
18
18
 
19
19
  import nox
20
20
  import nox_ext
21
- import packaging.version
22
- from rich.pretty import pprint
23
- from rich import print
21
+ from nox_ext import print, pprint
24
22
 
25
23
  here = Path(__file__).resolve().parent
26
24
  env = os.environ
@@ -33,8 +31,6 @@ PYPROJECT = nox.project.load_toml("pyproject.toml")
33
31
  PY_VERSIONS = nox.project.python_versions(PYPROJECT)
34
32
  PY_DEFAULT = "3.13"
35
33
 
36
- PKG_TOP_LEVELS = ["annotate"]
37
-
38
34
  # Prevent Python from writing bytecode
39
35
  env["PYTHONDONTWRITEBYTECODE"] = "1"
40
36
  # env["PKG_INITIAL_BUILD"] = "1"
@@ -47,14 +43,13 @@ rmtree = partial(shutil.rmtree, ignore_errors=True)
47
43
  # Sessions
48
44
 
49
45
  @nox.session(python=[PY_DEFAULT], default=False,
50
- tags=["prepare"], requires=["cleanup"])
46
+ requires=["cleanup"])
51
47
  def prepare(session: nox.Session) -> None:
52
48
  """Preparing the repository"""
53
49
  cmd = here/".aprep.cmd"
54
50
  if cmd.is_file(): subprocess.run([cmd])
55
51
 
56
- @nox.session(python=[PY_DEFAULT], default=False,
57
- tags=["cleanup"])
52
+ @nox.session(python=[PY_DEFAULT], default=False)
58
53
  def cleanup(session: nox.Session) -> None:
59
54
  """Cleaning the repository"""
60
55
  #no_package = true
@@ -75,8 +70,7 @@ def tests(session: nox.Session) -> None:
75
70
  session.py("--version")
76
71
  session.py("-m", "tests", *session.posargs)
77
72
 
78
- @nox.session(python=[PY_DEFAULT],
79
- tags=["coverage"])
73
+ @nox.session(python=[PY_DEFAULT])
80
74
  def coverage(session: nox.Session) -> None:
81
75
  """Running code coverage analysis"""
82
76
  session.install(".", "--group=coverage")
@@ -85,22 +79,21 @@ def coverage(session: nox.Session) -> None:
85
79
  session.py("-m", "coverage", "html", success_codes=range(0, 256))
86
80
  session.py("-m", "coverage", "report")
87
81
 
88
- @nox.session(python=[PY_DEFAULT],
89
- tags=["docs"])
82
+ @nox.session(python=[PY_DEFAULT])
90
83
  def docs(session: nox.Session) -> None:
91
84
  """Building documentation and running doc tests"""
92
85
  session.install(".", "--group=docs")
93
- html_path = here/"build/docs/html"
86
+ html_dir = here/"build/docs/html"
94
87
  session.py("-m", "sphinxlint", "-i", "#arch", "-i", ".nox", "-i", ".tox",
95
88
  "-i", "build", "-i", "dist", "-i", ".mypy_cache")
96
89
  #session.run("python","-m", "sphinx.apidoc", "-f", *[session.site_packages/f"{item}/"
97
- # for item in PKG_TOP_LEVELS])
98
- session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "html", "-E", here/"docs", here/"build/docs/html")
99
- session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "doctest", here/"docs", here/"build/docs/html")
100
- session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "linkcheck", here/"docs", here/"build/docs/html")
90
+ # for item in PKG.TOP_LEVELS])
91
+ session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "html", "-E", here/"docs", html_dir)
92
+ session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "doctest", here/"docs", html_dir)
93
+ session.py("-m", "sphinx.cmd.build", "-W", "-a", "-b", "linkcheck", here/"docs", html_dir)
101
94
 
102
95
  @nox.session(python=[PY_DEFAULT], default=False,
103
- tags=["build"], requires=[f"{tests.name}-{item}" for item in tests.python] + ["docs"])
96
+ requires=["tests", "docs"])
104
97
  def build(session: nox.Session) -> None:
105
98
  """Building the package"""
106
99
  session.install("--group=build")
@@ -110,7 +103,7 @@ def build(session: nox.Session) -> None:
110
103
  session.py("-m", "twine", "check", "dist/*")
111
104
 
112
105
  @nox.session(python=[PY_DEFAULT], default=False,
113
- tags=["publish"], requires=["build"])
106
+ requires=["build"])
114
107
  def publish(session: nox.Session) -> None:
115
108
  """Publishing the package and documentation"""
116
109
  session.install("--group=publish")
@@ -143,17 +136,14 @@ def publish(session: nox.Session) -> None:
143
136
  rmtree(gh_pages_dir)
144
137
  session.run("git", "worktree", "prune")
145
138
 
146
- @nox.session(python=[PY_DEFAULT],
147
- tags=["typing"])
139
+ @nox.session(python=[PY_DEFAULT])
148
140
  def typing(session: nox.Session) -> None:
149
141
  """Static type checking"""
150
142
  session.install(".", "--group=typing")
151
143
  session.py("-m", "mypy")
152
144
 
153
- @nox.session(python=[PY_DEFAULT],
154
- tags=["lint"])
145
+ @nox.session(python=[PY_DEFAULT])
155
146
  def lint(session: nox.Session) -> None:
156
147
  """Checking code style and quality"""
157
148
  session.install(".", "--group=lint")
158
- session.py("-m", "flake8", *[session.site_packages/f"{item}/"
159
- for item in PKG_TOP_LEVELS])
149
+ session.py("-m", "flake8", here/"src/")
@@ -2,12 +2,12 @@
2
2
  # SPDX-License-Identifier: Zlib
3
3
 
4
4
  [build-system]
5
- requires = ['setuptools>=80.10.1', 'packaging>=26.0.0']
5
+ requires = ['setuptools>=81.0.0', 'packaging>=26.0.0']
6
6
  build-backend = 'setuptools.build_meta'
7
7
 
8
8
  [project]
9
9
  name = 'annotate'
10
- version = '2.1.0'
10
+ version = '2.2.0'
11
11
  description = '''Decorator to set a function's __annotations__ like Py3.'''
12
12
  authors = [
13
13
  { name = 'Adam Karpierz', email = 'adam@karpierz.net' },
@@ -37,6 +37,7 @@ classifiers = [
37
37
  'Programming Language :: Python :: 3.12',
38
38
  'Programming Language :: Python :: 3.13',
39
39
  'Programming Language :: Python :: 3.14',
40
+ 'Programming Language :: Python :: 3.15',
40
41
  'Programming Language :: Python :: 3 :: Only',
41
42
  'Programming Language :: Python :: Implementation :: CPython',
42
43
  'Programming Language :: Python :: Implementation :: PyPy',
@@ -47,7 +48,7 @@ requires-python = '>=3.10.0,<4.0.0'
47
48
  dependencies = [
48
49
  # mandatory
49
50
  'typing-extensions>=4.15.0',
50
- 'pkg-about>=2.1.0',
51
+ 'pkg-about>=2.2.0',
51
52
  # others
52
53
  ]
53
54
  dynamic = ['readme']
@@ -57,17 +58,17 @@ dynamic = ['readme']
57
58
 
58
59
  [dependency-groups]
59
60
  base = [
60
- 'pip>=25.3',
61
- 'setuptools>=80.10.1',
61
+ 'pip>=26.0.1',
62
+ 'setuptools>=81.0.0',
62
63
  ]
63
64
  test = [
64
65
  { include-group = 'base' },
65
66
  'deepdiff>=8.6.1',
66
- 'rich>=14.2.0',
67
+ 'rich>=14.3.2',
67
68
  ]
68
69
  coverage = [
69
70
  { include-group = 'test' },
70
- 'coverage>=7.13.1',
71
+ 'coverage>=7.13.4',
71
72
  'covdefaults>=2.3.0',
72
73
  'diff-cover>=10.2.0',
73
74
  ]
@@ -98,7 +99,7 @@ typing = [
98
99
  { include-group = 'base' },
99
100
  'mypy>=1.19.1',
100
101
  'mypy_extensions>=1.1.0',
101
- 'types-setuptools>=80.9.0.20251223',
102
+ 'types-setuptools>=81.0.0.20260209',
102
103
  ]
103
104
  lint = [
104
105
  { include-group = 'test' },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: annotate
3
- Version: 2.1.0
3
+ Version: 2.2.0
4
4
  Summary: Decorator to set a function's __annotations__ like Py3.
5
5
  Author-email: Adam Karpierz <adam@karpierz.net>
6
6
  Maintainer-email: Adam Karpierz <adam@karpierz.net>
@@ -25,6 +25,7 @@ Classifier: Programming Language :: Python :: 3.11
25
25
  Classifier: Programming Language :: Python :: 3.12
26
26
  Classifier: Programming Language :: Python :: 3.13
27
27
  Classifier: Programming Language :: Python :: 3.14
28
+ Classifier: Programming Language :: Python :: 3.15
28
29
  Classifier: Programming Language :: Python :: 3 :: Only
29
30
  Classifier: Programming Language :: Python :: Implementation :: CPython
30
31
  Classifier: Programming Language :: Python :: Implementation :: PyPy
@@ -34,7 +35,7 @@ Requires-Python: <4.0.0,>=3.10.0
34
35
  Description-Content-Type: text/x-rst; charset=UTF-8
35
36
  License-File: LICENSE
36
37
  Requires-Dist: typing-extensions>=4.15.0
37
- Requires-Dist: pkg-about>=2.1.0
38
+ Requires-Dist: pkg-about>=2.2.0
38
39
  Dynamic: license-file
39
40
 
40
41
  annotate
@@ -1,2 +1,2 @@
1
1
  typing-extensions>=4.15.0
2
- pkg-about>=2.1.0
2
+ pkg-about>=2.2.0
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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes