Skip to content

feat(packaging): restructure project into src/frackture and add packaging metadata and CI - #1

Draft
cto-new[bot] wants to merge 1 commit into
mainfrom
chore-harden-packaging-frackture-src-pyproject-ci-release
Draft

feat(packaging): restructure project into src/frackture and add packaging metadata and CI#1
cto-new[bot] wants to merge 1 commit into
mainfrom
chore-harden-packaging-frackture-src-pyproject-ci-release

Conversation

@cto-new

@cto-new cto-new Bot commented Dec 12, 2025

Copy link
Copy Markdown
Contributor

Summary

Reorganize the project into a standard packaging layout and introduce CI to support local builds and automated releases. This lays groundwork for distribution via PyPI with minimal friction.

Details

  • Convert the single module into a package under src/frackture with init.py, core.py, and version.py
  • Add pyproject.toml (Hatchling), dependencies, and packaging backends; include runtime/dev dependencies
  • Include MANIFEST.in and versioning infrastructure
  • Update docs: README.md, CHANGELOG.md, CONTRIBUTING.md to reflect packaging and release flow
  • Add GitHub Actions workflows for lint/test across Python 3.9–3.12 and a publish workflow for tagged releases to TestPyPI/PyPI using tokens
  • Ensure local builds (python -m build) and dist checks pass
  • Maintain zero-server guarantees and backward-compatible API

…ging metadata and CI

Reorganize the repository into a standard Python package layout and configure packaging tooling to enable editable installs and local builds. This includes adding a version module, __init__ scaffolding, and a core packaging pipeline, plus CI for lint/test and release publishing.

- Create src/frackture with __init__.py, core.py, version.py and expose a stable API surface
- Add pyproject.toml using Hatchling, define runtime and dev/test dependencies, and manifest settings
- Introduce MANIFEST.in and packaging metadata
- Add README.md, CHANGELOG.md, and CONTRIBUTING.md documenting packaging and release processes
- Add GitHub Actions workflows: lint/test on Python 3.9–3.12 and publish workflow gated on tagged releases to TestPyPI/PyPI
- Validate builds locally with python -m build and twine checks

No breaking changes to the public API; zero-server guarantees preserved.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants