This repository contains sample code for publishing Python packages to PyPI. I manage multiple Python projects, and the configurations for publishing them to PyPI are almost identical. In this playground, I experiment with different configurations to optimize CI processes and streamline project management.
List of Spun-off Repositories
- python-richset: A rich set implementation for Python.
- dict_zip: A utility for zipping and unzipping dictionaries.
- python-throttle-controller: A Python library for rate-limiting and throttling control.
- cachepot: A caching utility to simplify working with in-memory caches.
- python-template-analysis: A template analysis tool for Python projects.
- python-timevec: A library for time vector manipulations in Python.
I have various code snippets and boilerplate code in private repositories or local directories. I plan to spin them off and place them in this repository. I will also use this repository to incubate these codes until they are mature enough to become independent repositories. During this process, I will add tests, CI, documentation, and other improvements.
This repository is a monorepo containing multiple packages. To manage these packages, namespace packages are used. For more information, refer to the official Python packaging guide on namespace packages.
Each package is organized within the src directory, and the packages are published to PyPI independently.
Install dependencies with poetry. If you don't have poetry installed, you can install it with the following command.
If you don't have pipx installed, you can install it with the following command in macOS
brew install pipx
pipx install poetry
poetry install
poetry poe test
poetry poe format
poetry poe check
BSD 3-Clause License