Skip to main content

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

  1. Clean Old Distributions:

    • Removes old distribution files from the dist directory.
  2. Build New Distributions:

    • Builds new distribution files (source and wheel) using setuptools.
  3. Upload Distributions to PyPI:

    • Uploads the built distributions to PyPI using twine.
  4. 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).
  5. Help Overview:

    • Provides an overview of the features and options of the tool.

Advanced Options

  1. Create/Update GitHub Actions Workflow:

    • Creates or updates a GitHub Actions workflow configuration file to automate build, test, and deployment processes.
  2. Run Tests Using Pytest:

    • Executes tests using pytest to ensure your package is working as expected.
  3. Lint and Format Code:

    • Lints your code using flake8 and formats it using black.
  4. Check and Update Dependencies:

    • Checks for outdated dependencies and updates them to the latest versions.
  5. 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:

  1. Clean Old Distributions:

    • Select option 1 to remove old distribution files.
  2. Build New Distributions:

    • Select option 2 to build new distribution files.
  3. Increment Version Number:

    • Select option 4, 5, or 6 to increment the version number (patch, minor, or major).
  4. Upload Distributions to PyPI:

    • Select option 3 to upload the new distribution files to PyPI.
  5. 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.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipackager-0.4.2.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

pipackager-0.4.2-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file pipackager-0.4.2.tar.gz.

File metadata

  • Download URL: pipackager-0.4.2.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.13

File hashes

Hashes for pipackager-0.4.2.tar.gz
Algorithm Hash digest
SHA256 f0af1210e5201642a471e23be1fe4b65bfeeea2f159a6fe270102514f8da12a8
MD5 a123ff9dcfb9c775d3a9f69cb942c743
BLAKE2b-256 16f53fc6ee40bde46e0006d4ada2d36ff075f68f3fcb0e8eb2e4eb65a8a99249

See more details on using hashes here.

File details

Details for the file pipackager-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: pipackager-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.13

File hashes

Hashes for pipackager-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 922bdd72a6b30c2acd848069a2dd9aaf73efca7ce484cd761cd5a9ee6b14aa8c
MD5 b138b1426b89f948425a7cf4915deae2
BLAKE2b-256 74695800a383b1589c838fe2db6a481d0d883ec0f499a3ecb897b29992a437b7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page