afterpython 0.3.16__tar.gz → 0.3.18__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 (64) hide show
  1. {afterpython-0.3.16 → afterpython-0.3.18}/PKG-INFO +7 -7
  2. {afterpython-0.3.16 → afterpython-0.3.18}/pyproject.toml +11 -8
  3. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/pcu.py +3 -3
  4. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/ci-workflow-template.yml +7 -7
  5. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/deploy-workflow-template.yml +2 -2
  6. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/pre-commit-config-template.yaml +1 -1
  7. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/release-workflow-template.yml +1 -1
  8. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/pyproject.py +2 -2
  9. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/utils.py +1 -1
  10. {afterpython-0.3.16 → afterpython-0.3.18}/README.md +0 -0
  11. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/__init__.py +0 -0
  12. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/_io/toml.py +0 -0
  13. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/_io/yaml.py +0 -0
  14. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/_paths.py +0 -0
  15. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/_typing.py +0 -0
  16. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/__init__.py +0 -0
  17. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/build_pdoc.py +0 -0
  18. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/content_json.py +0 -0
  19. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/faq_json.py +0 -0
  20. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/index_md.py +0 -0
  21. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/jupyter_notebook.py +0 -0
  22. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/llms_txt.py +0 -0
  23. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/marimo_notebook.py +0 -0
  24. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/markdown.py +0 -0
  25. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/metadata.py +0 -0
  26. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/builders/url_md.py +0 -0
  27. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/__init__.py +0 -0
  28. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/add.py +0 -0
  29. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/build.py +0 -0
  30. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/bump.py +0 -0
  31. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/check.py +0 -0
  32. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/clean.py +0 -0
  33. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/commit.py +0 -0
  34. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/commitizen.py +0 -0
  35. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/dev.py +0 -0
  36. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/format.py +0 -0
  37. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/init.py +0 -0
  38. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/init_branch_rules.py +0 -0
  39. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/install.py +0 -0
  40. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/lock.py +0 -0
  41. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/pre_commit.py +0 -0
  42. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/preview.py +0 -0
  43. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/release.py +0 -0
  44. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/remove.py +0 -0
  45. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/serve.py +0 -0
  46. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/start.py +0 -0
  47. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/sync.py +0 -0
  48. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/commands/update.py +0 -0
  49. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/cli/main.py +0 -0
  50. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/const.py +0 -0
  51. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/main.py +0 -0
  52. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/py.typed +0 -0
  53. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/cz-template.toml +0 -0
  54. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/dependabot-template.yml +0 -0
  55. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/pdoc/frame.html.jinja2 +0 -0
  56. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/templates/ruff-template.toml +0 -0
  57. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/_afterpython.py +0 -0
  58. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/_git.py +0 -0
  59. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/branch_rules.py +0 -0
  60. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/commitizen.py +0 -0
  61. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/github_actions.py +0 -0
  62. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/myst.py +0 -0
  63. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/tools/pre_commit.py +0 -0
  64. {afterpython-0.3.16 → afterpython-0.3.18}/src/afterpython/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: afterpython
3
- Version: 0.3.16
3
+ Version: 0.3.18
4
4
  Summary: CLI tool to streamline Python package maintenance and generate a dedicated project website
5
5
  Keywords: package-maintenance,project-website,static-site-generator,developer-tools,documentation,cli-tool,ci/cd,mystmd,semantic-release,python-packaging
6
6
  Author: Stephen Yau
@@ -14,20 +14,20 @@ Classifier: Typing :: Typed
14
14
  Classifier: Programming Language :: Python :: 3.11
15
15
  Classifier: Programming Language :: Python :: 3.12
16
16
  Classifier: Programming Language :: Python :: 3.13
17
- Requires-Dist: click>=8.2.1
17
+ Requires-Dist: click>=8.1.8
18
18
  Requires-Dist: trogon>=0.6.0
19
- Requires-Dist: httpx>=0.28.1
19
+ Requires-Dist: httpx2>=2.5.0
20
20
  Requires-Dist: tomlkit>=0.15.0
21
21
  Requires-Dist: ruamel-yaml>=0.19.1
22
22
  Requires-Dist: gitpython>=3.1.50
23
23
  Requires-Dist: python-dotenv>=1.2.2
24
24
  Requires-Dist: pyproject-metadata>=0.11.0
25
- Requires-Dist: jupytext>=1.19.2
26
- Requires-Dist: mystmd>=1.9.1
25
+ Requires-Dist: jupytext>=1.19.4
26
+ Requires-Dist: mystmd>=1.10.1
27
27
  Requires-Dist: pdoc>=16.0.0
28
- Requires-Dist: ruff>=0.15.12
28
+ Requires-Dist: ruff>=0.15.21
29
29
  Requires-Dist: pre-commit>=4.6.0
30
- Requires-Dist: commitizen>=4.16.0
30
+ Requires-Dist: commitizen>=4.16.4
31
31
  Requires-Python: >=3.11
32
32
  Project-URL: homepage, https://afterpython.afterpython.org
33
33
  Project-URL: repository, https://github.com/AfterPythonOrg/afterpython
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "afterpython"
3
- version = "0.3.16"
3
+ version = "0.3.18"
4
4
  description = "CLI tool to streamline Python package maintenance and generate a dedicated project website"
5
5
  license = "Apache-2.0"
6
6
  authors = [
@@ -32,22 +32,22 @@ classifiers = [
32
32
  ]
33
33
  requires-python = ">=3.11"
34
34
  dependencies = [
35
- "click>=8.2.1",
35
+ "click>=8.1.8",
36
36
  "trogon>=0.6.0",
37
- "httpx>=0.28.1",
37
+ "httpx2>=2.5.0",
38
38
  "tomlkit>=0.15.0",
39
39
  "ruamel-yaml>=0.19.1",
40
40
  "gitpython>=3.1.50",
41
41
  # "pygithub>=2.8.1",
42
42
  "python-dotenv>=1.2.2",
43
43
  "pyproject-metadata>=0.11.0",
44
- "jupytext>=1.19.2",
44
+ "jupytext>=1.19.4",
45
45
  # "jinja2>=3.1.6",
46
- "mystmd>=1.9.1",
46
+ "mystmd>=1.10.1",
47
47
  "pdoc>=16.0.0",
48
- "ruff>=0.15.12",
48
+ "ruff>=0.15.21",
49
49
  "pre-commit>=4.6.0",
50
- "commitizen>=4.16.0",
50
+ "commitizen>=4.16.4",
51
51
  # "python-semantic-release>=10.5.2",
52
52
  ]
53
53
 
@@ -64,9 +64,12 @@ pcu = "afterpython.main:run_pcu"
64
64
  # override-dependencies = ["platformdirs>=4.5.0", "nodeenv>=1.9.1"]
65
65
 
66
66
  [build-system]
67
- requires = ["uv_build>=0.11.14,<0.12.0"]
67
+ requires = ["uv_build>=0.11.28,<0.12.0"]
68
68
  build-backend = "uv_build"
69
69
 
70
+ [tool.uv]
71
+ exclude-newer = "14 days"
72
+
70
73
  [tool.uv.build-backend]
71
74
  module-name = "afterpython"
72
75
  module-root = "src"
@@ -60,18 +60,18 @@ async def get_latest_versions(
60
60
  requirements: list[Requirement],
61
61
  ) -> dict[str, Version | None]:
62
62
  """Get latest versions for a list of dependencies from PyPI."""
63
- import httpx
63
+ import httpx2
64
64
 
65
65
  from afterpython.utils import fetch_pypi_json
66
66
 
67
67
  async def fetch_version(
68
- client: httpx.AsyncClient, package_name: str
68
+ client: httpx2.AsyncClient, package_name: str
69
69
  ) -> Version | None:
70
70
  """Fetch the latest version of a package from PyPI."""
71
71
  data = await fetch_pypi_json(client, package_name)
72
72
  return Version(data["info"]["version"]) if data else None
73
73
 
74
- async with httpx.AsyncClient(timeout=10.0) as client:
74
+ async with httpx2.AsyncClient(timeout=10.0) as client:
75
75
  tasks = [fetch_version(client, req.name) for req in requirements]
76
76
  results = await asyncio.gather(*tasks, return_exceptions=True)
77
77
  return dict(zip([req.name for req in requirements], results, strict=False))
@@ -18,7 +18,7 @@ jobs:
18
18
  runs-on: ubuntu-latest
19
19
  steps:
20
20
  - name: Checkout code
21
- uses: actions/checkout@v6
21
+ uses: actions/checkout@v7
22
22
 
23
23
  - name: Set up Python
24
24
  uses: actions/setup-python@v6
@@ -48,7 +48,7 @@ jobs:
48
48
  use_pixi: ${{ steps.check.outputs.use_pixi }}
49
49
  steps:
50
50
  - name: Checkout code
51
- uses: actions/checkout@v6
51
+ uses: actions/checkout@v7
52
52
 
53
53
  - name: Check for pixi.toml
54
54
  id: check
@@ -73,7 +73,7 @@ jobs:
73
73
 
74
74
  steps:
75
75
  - name: Checkout code
76
- uses: actions/checkout@v6
76
+ uses: actions/checkout@v7
77
77
 
78
78
  - name: Set up Python ${{ matrix.python-version }}
79
79
  uses: actions/setup-python@v6
@@ -121,12 +121,12 @@ jobs:
121
121
 
122
122
  steps:
123
123
  - name: Checkout code
124
- uses: actions/checkout@v6
124
+ uses: actions/checkout@v7
125
125
 
126
126
  - name: Set up pixi
127
- uses: prefix-dev/setup-pixi@v0.9.6
127
+ uses: prefix-dev/setup-pixi@v0.10.0
128
128
  with:
129
- pixi-version: v0.67.2
129
+ pixi-version: v0.72.2
130
130
  cache: true
131
131
  # Optional: Uncomment if you need prefix.dev authentication
132
132
  # auth-host: prefix.dev
@@ -177,7 +177,7 @@ jobs:
177
177
  runs-on: ubuntu-latest
178
178
  steps:
179
179
  - name: Checkout code
180
- uses: actions/checkout@v6
180
+ uses: actions/checkout@v7
181
181
 
182
182
  - name: Set up Python
183
183
  uses: actions/setup-python@v6
@@ -36,7 +36,7 @@ jobs:
36
36
  runs-on: ubuntu-latest
37
37
  steps:
38
38
  - name: Checkout code
39
- uses: actions/checkout@v6
39
+ uses: actions/checkout@v7
40
40
 
41
41
  - name: Install pnpm
42
42
  uses: pnpm/action-setup@v6
@@ -44,7 +44,7 @@ jobs:
44
44
  version: 10
45
45
 
46
46
  - name: Set up Node.js
47
- uses: actions/setup-node@v6
47
+ uses: actions/setup-node@v7
48
48
  with:
49
49
  node-version: '24'
50
50
  cache: 'pnpm'
@@ -23,7 +23,7 @@ repos:
23
23
  stages:
24
24
  - pre-commit
25
25
  - repo: https://github.com/astral-sh/ruff-pre-commit
26
- rev: v0.15.12
26
+ rev: v0.15.21
27
27
  hooks:
28
28
  - id: ruff-check
29
29
  stages:
@@ -14,7 +14,7 @@ jobs:
14
14
 
15
15
  steps:
16
16
  - name: Checkout code
17
- uses: actions/checkout@v6
17
+ uses: actions/checkout@v7
18
18
 
19
19
  - name: Set up Python
20
20
  uses: actions/setup-python@v6
@@ -74,7 +74,7 @@ def init_pyproject():
74
74
  - add [build-system] section with uv build backend (same as `uv init --package`)
75
75
  - add [project.urls] section with homepage, repository, and documentation URLs
76
76
  """
77
- import httpx
77
+ import httpx2
78
78
 
79
79
  from afterpython.tools._git import get_git_user_config, get_github_url
80
80
  from afterpython.utils import fetch_pypi_json
@@ -83,7 +83,7 @@ def init_pyproject():
83
83
 
84
84
  async def fetch_build_backend_version() -> str | None:
85
85
  """Fetch the latest version of build backend package from PyPI."""
86
- async with httpx.AsyncClient() as client:
86
+ async with httpx2.AsyncClient() as client:
87
87
  data = await fetch_pypi_json(client, build_backend)
88
88
  return data["info"]["version"] if data else None
89
89
 
@@ -5,7 +5,7 @@ from typing import TYPE_CHECKING
5
5
  if TYPE_CHECKING:
6
6
  from pathlib import Path
7
7
 
8
- from httpx import AsyncClient
8
+ from httpx2 import AsyncClient
9
9
 
10
10
  from afterpython._typing import NodeEnv
11
11
 
File without changes