afterpython 0.3.2__py3-none-any.whl → 0.3.3__py3-none-any.whl

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.
@@ -251,7 +251,10 @@ def website(ctx, no_backup: bool):
251
251
  ensure_website_gitignore_rules()
252
252
  except Exception as e:
253
253
  click.echo(f"✗ Error updating project website template: {e}", err=True)
254
- if not no_backup:
254
+ # On a fresh `ap init`, website_path didn't exist beforehand, so no backup
255
+ # was created — skip restore in that case rather than crashing with
256
+ # FileNotFoundError, which would mask the real error above.
257
+ if not no_backup and backup_path.exists():
255
258
  click.echo("Restoring from backup...")
256
259
  if website_path.exists():
257
260
  shutil.rmtree(website_path)
@@ -119,7 +119,7 @@ def init_afterpython():
119
119
  },
120
120
  "website": {
121
121
  "url": "",
122
- "favicon": "favicon.svg",
122
+ "favicon": "favicon.ico",
123
123
  "logo": "logo.svg",
124
124
  "logo_dark": "logo.svg",
125
125
  "thumbnail": "thumbnail.png",
afterpython/tools/myst.py CHANGED
@@ -182,7 +182,9 @@ def init_myst():
182
182
 
183
183
  # find any existing node.js version and use it, if no, install the Node.js version specified in NODEENV_VERSION
184
184
  node_env: NodeEnv = find_node_env()
185
- subprocess.run(["npm", "install", "-g", "pnpm"], env=node_env, check=True)
185
+ # Pin to pnpm major version — `npm install -g pnpm` (unpinned) caused a
186
+ # silent 9→10 jump that broke `ap init` via ERR_PNPM_IGNORED_BUILDS.
187
+ subprocess.run(["npm", "install", "-g", "pnpm@11"], env=node_env, check=True)
186
188
  for content_type in CONTENT_TYPES:
187
189
  path = ap.paths.afterpython_path / content_type
188
190
  print(f"Initializing MyST Markdown (mystmd) in {path.name}/ directory ...")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: afterpython
3
- Version: 0.3.2
3
+ Version: 0.3.3
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
@@ -35,7 +35,7 @@ afterpython/cli/commands/remove.py,sha256=Fl79JSI9IdHyzYflocXxcxgBkBPkNFAW98Yuij
35
35
  afterpython/cli/commands/serve.py,sha256=L0LIhMGByQA_mNTOAGHQTQ8TcBfi5sgmO1_iGI24QgI,822
36
36
  afterpython/cli/commands/start.py,sha256=q4rUkIllOO8wJQ9ABtsx-dqkW1yC0vltAtSkiHN_GH4,4002
37
37
  afterpython/cli/commands/sync.py,sha256=Av67jsCBxhh1skixihPgNyvZMUsh_j0pQGmG4EoR_A8,6318
38
- afterpython/cli/commands/update.py,sha256=CM3CZJsSRdiyeWl19Dx5eyYeXK5w7jU0hpC4x9ENuB4,9154
38
+ afterpython/cli/commands/update.py,sha256=082K1rg-ctCuKB_E7g_p-UWkTA9hoC65yhkIrtLZQ18,9408
39
39
  afterpython/cli/main.py,sha256=-9eQiIrUViSvof-Ic2RHF3AVZharPSQh9sJ7tkhvf6Q,5042
40
40
  afterpython/const.py,sha256=B_yUBmHPyu98aOibwt7idWbhKNBBed0TeYXNBd8tPTk,157
41
41
  afterpython/main.py,sha256=w0z6mTib3u4p2HxMrk-tIJlZtur7uRaqsbE0ewlYlSs,490
@@ -49,17 +49,17 @@ afterpython/templates/pdoc/frame.html.jinja2,sha256=GX4pNSuYC4Fq9hvZ01WyaBQes4Fy
49
49
  afterpython/templates/pre-commit-config-template.yaml,sha256=FfQb0mVWouGmV62uCF5WO18hodZhGt-PfybB6m9nsAM,917
50
50
  afterpython/templates/release-workflow-template.yml,sha256=3YBkgrqmi--uznslpMxPz7Vj7L4_NPlhDxgwYBt-Ui8,1606
51
51
  afterpython/templates/ruff-template.toml,sha256=lNCd4EthoLScr4cyVEgGUH4xK5CfIX3f9I3zkJHAYgg,1008
52
- afterpython/tools/_afterpython.py,sha256=IgzUG8ihdaqrqLIma8yy6pVtC2ldt4jyWOf6FQWnKCU,4345
52
+ afterpython/tools/_afterpython.py,sha256=a82taUWoY8yXmzE1m25zV0-vwmyglp5X7G2Erjz3oLw,4345
53
53
  afterpython/tools/_git.py,sha256=aO-qDEQ4OevD_B74DYKK4nQKYeiaS1BXmYc8paJRfbQ,3772
54
54
  afterpython/tools/branch_rules.py,sha256=ciQ2H2YBnoCZu_plyVeIHzf2FcAILRFhpjzOR2_IfJg,3159
55
55
  afterpython/tools/commitizen.py,sha256=ZO1qHmzUU0myd85tncv76WtIR7DB_AoQGSUvaf78Ohg,438
56
56
  afterpython/tools/github_actions.py,sha256=0xzOc41QF1PKagD1CW7BAt_Rugy0KCEx_KfcrPKVl3c,3168
57
- afterpython/tools/myst.py,sha256=2VO-gD25PbGSD8-v1sLI1v3Q9loahRd3ednKrW4_Utc,8113
57
+ afterpython/tools/myst.py,sha256=VunqoTxWE6y9LXYPBh_JvLMW8kqGMGBkqYkhr_bLvj8,8269
58
58
  afterpython/tools/pre_commit.py,sha256=oNsrUkPI13rSSBSyhyTTKPnQGhDxLIPYhxu6kL0fDmo,1206
59
59
  afterpython/tools/pyproject.py,sha256=hz-DOf-pkGBF2m_RqEZipAaO-NDbsLxrrc65LWAIwLA,3698
60
60
  afterpython/utils.py,sha256=fVa3jIzCvhn7QA7N0M6d_pvojpPFrN-hae8trUYhPKU,11701
61
61
  afterpython/version.py,sha256=hihRV1S-gc1m46OaXD32ikkEkqzs-Gtq7AcAqOQV-wY,1603
62
- afterpython-0.3.2.dist-info/WHEEL,sha256=-unyBNsdNo6Y_XVO25zjvxasG_uUFN_fBd_kLyKE-Fk,81
63
- afterpython-0.3.2.dist-info/entry_points.txt,sha256=roa0PDgBueM1JPbRG0G2OSxzaN394OUL_oS9iEwVLBc,80
64
- afterpython-0.3.2.dist-info/METADATA,sha256=Rhe3BEDPDmJrHdwZtiNQwa6EJ71P975ErqSNeLLrerE,6181
65
- afterpython-0.3.2.dist-info/RECORD,,
62
+ afterpython-0.3.3.dist-info/WHEEL,sha256=fWriCkzqm-pffF5af4gJC9iI5FMFaJTuN9UxxxzOmdY,81
63
+ afterpython-0.3.3.dist-info/entry_points.txt,sha256=roa0PDgBueM1JPbRG0G2OSxzaN394OUL_oS9iEwVLBc,80
64
+ afterpython-0.3.3.dist-info/METADATA,sha256=A_ALuju9zllIlsIQphLAHgnhUzlMiAX-tqDcNFAfzFY,6181
65
+ afterpython-0.3.3.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: uv 0.11.12
2
+ Generator: uv 0.11.14
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any