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

Uploaded Source

Built Distribution

pipackager-0.3.1-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pipackager-0.3.1.tar.gz
Algorithm Hash digest
SHA256 dd1cea359cc0aebacde9cbce62d3e2bdea3778369701f1ab61e62bb7eb64ad83
MD5 b792155662cf5b697c5205953b6279b7
BLAKE2b-256 ecccf22c7376d88c94ae4d294b2c3b8396b4ed9e828f8fbf6fdc1372162bbb1e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pipackager-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 8.5 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.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e7067a7ace73da37412d057c17bba081db29540bb02c9e5c7b49fb1406fd7dc5
MD5 3fd2b6f73c55352d694b764f97b7f405
BLAKE2b-256 5dab0a83743fb014e31ebb2b28d08255f691245473f99462800ef36d0df36c24

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