packaging requirements
build>=1.2.2
packaging>=24.2
twine>=6.0.1
wheel>=0.45.1
---------------

packaging doc with setuptools

https://setuptools.pypa.io/en/latest/userguide/package_discovery.html#package-discovery

  pip install --upgrade setuptools[core]

quick steps:
use src-layout
  pip install --upgrade build
  python -m build
  pip install --editable .

when done with dev
  pip uninstall <pkg-name>


packaging
https://packaging.python.org/en/latest/tutorials/packaging-projects/
https://packaging.python.org/en/latest/overview/

upload to pipy
  pip install --upgrade twine
 or
  uv sync --extra dev

upload to test env - scoped token
  py -m twine upload --repository testpypi/config-tpg dist/*
https://test.pypi.org/project/example_package_YOUR_USERNAME_HERE.

upload to test env
  py -m twine upload --repository testpypi dist/*

view package in test pypi
https://test.pypi.org/

install package in local env:

  py -m pip install --index-url https://test.pypi.org/simple/ --no-deps example-package-YOUR-USERNAME-HERE

prod env
==========

upload to prod env
  py -m twine upload --repository pypi dist/*

view:
https://pypi.org/project/package-name


tpgutils_testpypi:

pypi-AgENdGVzdC5weXBpLm9yZwIkOWNjYTRmZGItNWQ3OS00MTk5LThkYmUtZWVhNWJhMzQ5ZmUzAAIQWzEsWyJ0cGd1dGlscyJdXQACLFsyLFsiNmYzOGU2NjItODZmNS00Zjc2LThlZTctNmNiZTk1ZWUyYmM3Il1dAAAGIBsr1C0EqQcNdlVee7Xmn4NkG_JwaIwgDinOtllK-p7S

tpgutils_pypi:

pypi-AgEIcHlwaS5vcmcCJDVjN2UyMTU0LTU5N2ItNGQ5MS1hZTFiLTVlODliOTZkYTQzZQACEFsxLFsidHBndXRpbHMiXV0AAixbMixbImFjZGRiOTgwLWM0ZGYtNDNjNy1iMTgyLTA3NTg2YTE4OGE0YyJdXQAABiCZN76pqabYmdXz9TdGraDJvuzvhvgK_P4_hE7i5R5eUQ
