A tool to manage your PyPI package.
Project description
pipackager
___ _____ ___ _
/ _ \\_ \/ _ \__ _ ___| | ____ _ __ _ ___ _ __
/ /_)/ / /\/ /_)/ _` |/ __| |/ / _` |/ _` |/ _ | '__|
/ ___/\/ /_/ ___| (_| | (__| | (_| | (_| | __| |
\/ \____/\/ \__,_|\___|_|\_\__,_|\__, |\___|_|
|___/
Created by rUv
pipackager
is a comprehensive tool designed to manage your PyPI package, simplifying tasks such as cleaning old distributions, building new ones, uploading to PyPI, version incrementing, and more.
Installation
To install pipackager
, use pip:
pip install pipackager
Usage
You can start the tool by running:
pipackager
This will launch an interactive menu that allows you to manage your PyPI packages with ease.
Features
Main Features
-
Clean Old Distributions:
- Removes old distribution files from the
dist
directory.
- Removes old distribution files from the
-
Build New Distributions:
- Builds new distribution files (source and wheel) using
setuptools
.
- Builds new distribution files (source and wheel) using
-
Upload Distributions to PyPI:
- Uploads the built distributions to PyPI using
twine
.
- Uploads the built distributions to PyPI using
-
Increment Version Number:
- Patch: Increments the patch version number (e.g., 0.1.0 -> 0.1.1).
- Minor: Increments the minor version number (e.g., 0.1.0 -> 0.2.0).
- Major: Increments the major version number (e.g., 0.1.0 -> 1.0.0).
-
Help Overview:
- Provides an overview of the features and options of the tool.
Advanced Options
-
Create/Update GitHub Actions Workflow:
- Creates or updates a GitHub Actions workflow configuration file to automate build, test, and deployment processes.
-
Run Tests Using Pytest:
- Executes tests using
pytest
to ensure your package is working as expected.
- Executes tests using
-
Lint and Format Code:
- Lints your code using
flake8
and formats it usingblack
.
- Lints your code using
-
Check and Update Dependencies:
- Checks for outdated dependencies and updates them to the latest versions.
-
Generate Start Command:
- Generates a start command for your library, allowing you to execute it easily from the command line.
Environment Variables
pipackager
requires the following environment variables for uploading distributions to PyPI:
TWINE_USERNAME
: Your PyPI username.TWINE_PASSWORD
: Your PyPI password or token.
If these variables are not set, pipackager
will prompt you to enter them and will export them for you.
Example Workflow
Here is an example workflow of using pipackager
to manage your PyPI package:
-
Clean Old Distributions:
- Select option
1
to remove old distribution files.
- Select option
-
Build New Distributions:
- Select option
2
to build new distribution files.
- Select option
-
Increment Version Number:
- Select option
4
,5
, or6
to increment the version number (patch, minor, or major).
- Select option
-
Upload Distributions to PyPI:
- Select option
3
to upload the new distribution files to PyPI.
- Select option
-
Advanced Options:
- Select option
7
to access advanced options such as creating/updating GitHub workflows, running tests, linting and formatting code, checking and updating dependencies, or generating a start command.
- Select option
Help
To view a detailed help overview, select option 8
from the main menu.
License
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
pipackager
is designed to streamline the process of managing and deploying your Python packages to PyPI, making it easier to maintain high-quality, well-tested, and properly versioned software.
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 Distribution
File details
Details for the file pipackager-0.2.0.tar.gz
.
File metadata
- Download URL: pipackager-0.2.0.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8565a91335fc785babd7d5c747c427b8082dc4a8a3c2a5543ad75e1562e7cf56 |
|
MD5 | ccdee69fa40e72259d2ebe5f04c0ed80 |
|
BLAKE2b-256 | a392c0289755d31e34de4784a2589654fadace4ae39e7f35a73cc106526e3f05 |
File details
Details for the file pipackager-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: pipackager-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bf7191d0dd16453c7c4c0b545fe0d65cc52a96a1cf2ea903725305f4624962d |
|
MD5 | 61b86d0f61e828d7e1cea0e40f003d17 |
|
BLAKE2b-256 | d4035c4f21a2745c44978b0d7fb79554e8b43ed465193748e48ef39d1795f940 |