Example Project Structure for a Python / PyPI Project
Project description
Documentation
Example Project Structure for a Python / PyPI Project
Installation
Note that this supports Python 3 ONLY
Basic Usage
Warning eggs are deprecated in favor of wheels, and not supported by pip.
This project is a sample template used to aggregate the process of:
Laying out a python project
Using setuptools build system to
to facilitate packaging Python projects
Python package and module definitions
Distribution package metadata
Project installation
Outline the process to
Create Python Eggs - a single-file importable distribution format
Automatically include all packages in your source tree, without listing them individually in setup.py
Automatically generate wrapper scripts or Windows (console and GUI) .exe files for any number of “main” functions in your project. (Note: this is not a py2exe replacement; the .exe files rely on the local Python installation.)
Command Reference
https://setuptools.readthedocs.io/en/latest/setuptools.html#command-reference
For example, to produce a source distribution, simply invoke:
>>> python setup.py sdist
Detailed instructions to distribute a setuptools project can be found at Packaging project tutorials. https://packaging.python.org/tutorials/packaging-projects/#generating-distribution-archives
Before you begin, make sure you have the latest versions of setuptools and wheel:
>>> python -m pip install --user --upgrade setuptools wheel
To build a setuptools project, run this command from the same directory where setup.py is located:
>>> python setup.py sdist bdist_wheel
This will generate distribution archives in the dist directory.
Uploading to test.pypi.org
Before you upload the generated archives make sure you’re registered on https://test.pypi.org/account/register/.
You will also need to verify your email to be able to upload any packages. You should install twine to be able to upload packages:
>>> python -m pip install --user --upgrade twine
Now, to upload these archives, run:
>>> python -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
To install your newly uploaded package example_pkg, you can use pip:
>>> python -m pip install --index-url https://test.pypi.org/simple/ example_pkg
If you have issues at any point, please refer to Packaging project tutorials for clarification.
Credits
Patrick Shiel: github.com/patrickshiel
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pyprojecttemplate-0.2.0-py3.8.egg
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f4c992e03b820fec58acf8aae4f9c8c29d9c95bbdb7d7c0d6b3e7dee54b8dea |
|
MD5 | e27754e3aa885bf778c567abdc7fd44b |
|
BLAKE2b-256 | 12c7a13371eaba329206f7ae7aacb2047b3b9fb23b9bf1728a14cbfe076ae9dc |
Hashes for pyprojecttemplate-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f7a8d982f67113b1e1f24ddc4dfc292b1fc0c8640766c6f1b9e54e57e4ff348 |
|
MD5 | abfac22e411de17dc8bacdffac3001dd |
|
BLAKE2b-256 | 1dff42328fcf47375bc93d368d0a57c9c962c95e438d1709a4fc7ce78069f81d |