Changelog¶
1.0.0a4 (unreleased)¶
Warn about non-boilerplate
MANIFEST.inrules that may need manual porting to[tool.hatch.build]configuration. [jensens]
1.0.0a3 (2026-02-28)¶
Strip
License ::classifiers from generatedpyproject.tomlwhen a PEP 639 license expression is present. setuptools >= 78 rejects having both. [jensens]Remove
check-manifesthook from.pre-commit-config.yamlwhenMANIFEST.inis deleted during packaging migration. [jensens]
1.0.0a2 (2026-02-28)¶
Add Phase 7: Namespace package migration (PEP 420,
--namespaces). Removespkg_resources/pkgutilnamespace declarations from__init__.pyfiles, cleansnamespace_packagesfromsetup.py/setup.cfg. [jensens]Add Phase 8: Packaging migration (
--packaging). Convertssetup.py/setup.cfgto PEP 621pyproject.tomlwith hatchling build backend. Includes tool config conversion (flake8/isort/pycodestyle to ruff, pytest, coverage sections). [jensens]Handle common
long_descriptionpatterns insetup.pyparsing:read()helpers,.format(), string concatenation,str.join(), and f-strings with file reads. [jensens]Add
CONTRIBUTORSto recognized doc-filename whitelist. [jensens]Fix namespace migration searching in wrong directory when
--project-dirdiffers from source dir. [jensens]Use hatch-vcs for dynamic versioning from git tags. [jensens]
1.0.0a1 (2025-05-01)¶
Initial release: automated Plone 5.2 to 6.x code migration tool. [jensens]
Phase 1: Python import migration via libcst codemods. [jensens]
Phase 2: ZCML dotted-name migration. [jensens]
Phase 3: GenericSetup XML migration. [jensens]
Phase 4: Page template migration. [jensens]
Phase 5: Bootstrap 3 to 5 migration (opt-in via
--bootstrap). [jensens]Phase 6: Audit via semgrep rules (35+ detection rules). [jensens]