feat: initial p2pkg tool with CI, ruff, and stable tagging
Some checks failed
CI (tests + ruff) and stable tag / unittest (py3.10) (push) Has been cancelled
CI (tests + ruff) and stable tag / unittest (py3.11) (push) Has been cancelled
CI (tests + ruff) and stable tag / unittest (py3.12) (push) Has been cancelled
CI (tests + ruff) and stable tag / unittest (py3.13) (push) Has been cancelled
CI (tests + ruff) and stable tag / ruff (py3.12) (push) Has been cancelled
CI (tests + ruff) and stable tag / Tag stable (if version commit) (push) Has been cancelled

https://chatgpt.com/share/69468609-0584-800f-a3e0-9d58210fb0e8
This commit is contained in:
2025-12-20 12:18:28 +01:00
parent 87689b1d8b
commit d8e5fdff26
11 changed files with 441 additions and 26 deletions

View File

@@ -1,21 +1,38 @@
[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
requires = ["hatchling>=1.24.2"]
build-backend = "hatchling.build"
[project]
name = "p2pkg"
version = "0.1.0"
description = ""
description = "One-off refactor helper: migrate foo.py -> foo/__main__.py and generate foo/__init__.py that re-exports public API."
readme = "README.md"
requires-python = ">=3.10"
authors = [{ name = "Kevin Veen-Birkenbach", email = "kevin@veen.world" }]
license = { text = "All rights reserved by Kevin Veen-Birkenbach" }
urls = { Homepage = "https://git.veen.world/kevinveenbirkenbach/p2pkg" }
license = { file = "LICENSE" }
authors = [
{ name = "Kevin Veen-Birkenbach" }
]
keywords = ["refactor", "python", "imports", "package"]
classifiers = [
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Topic :: Software Development :: Refactoring"
]
dependencies = []
[project.scripts]
p2pkg = "p2pkg.__main__:main"
[tool.setuptools]
package-dir = {"" = "src"}
[tool.hatch.build.targets.wheel]
packages = ["src/p2pkg"]
[tool.setuptools.packages.find]
where = ["src"]
[tool.hatch.build.targets.sdist]
include = [
"/src",
"/tests",
"/tools",
"/README.md",
"/LICENSE",
"/Makefile",
"/pyproject.toml",
]