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.6.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pipackager-0.4.6.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.6.tar.gz
Algorithm Hash digest
SHA256 b43d788f03988f66dd43c679e5dadc37856d0e50332ef78c85e39905e3396383
MD5 56de3381678e72c199451170131d7186
BLAKE2b-256 3308bd777d0cf91701325dc3949cdcd661ba56d3199183c8fb89dd7a57ac885b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pipackager-0.4.6-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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 1c9afa4829ed7067984fd13b61fc6aad54bf6bea160e61b906b0a7f905240ac8
MD5 0fc6caba357d4797a79f619c9f9b6fcd
BLAKE2b-256 0406961062c46bb9995842f31ee268bb528c86ecc2a8d624483c28cf9f3b6372

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