Skip to main content

Yapping

Yet another python packaging manager.

But it is basically a thin wrapper around pip-tools which also adds and removes dependencies from pyproject's dependency list.

Installation:

pip install yapping

Usage:

Using yap is very easy:

$ yap --help
usage: python -m yapping [-h] [-v] {add,rm,compile,upgrade,version,init} ...

options:
  -h, --help            show this help message and exit
  -v, --version         Print version of the tool.

command:
  {add,rm,compile,upgrade,version,init}
    add                 Add a new dependency
    rm                  Remove an existing dependency
    compile             compile dependencies with pip-tools' `pip-compile`
    upgrade             compile dependencies with pip-tools' `pip-compile`
    version             Updatea project version in pyproject.toml
    init                Create a pyproject.toml from a template.

You can also call the module directly, like:

python -m yapping <...>

Why you should use yap?

You should not. This is my personal pet project. But, the good thing about it is that it does not lock you into it besides using pip-tools for compiling the dependencies.

Development

Virtual Environment

Create a virtual Environment

virtualenv .venv -p pytthon 3.14
source .venv/bin/activate
python -m pip install -r testing/requirements-test.txt

Tests

Using pytest for Tests

python -m pytest

Formatting and Linting

Using pre-commit for linting and formatting

pre-commit install
pre-commit run --all-files

Changelog

v1.5.0

Sort dependencies case-insensitively.

v1.4.0

Add --compile, --compile-test flags to add, and rm commands.

v1.3.0

Add upgrade command to upgrade dependencies.

v1.2.0

Add support for python 3.11, 3.12 and 3.13.

v1.1.0

Fix the CLI passing parameters to the commands.

v1.0.0

Add support for adding or removing multiple packages at once.

v0.6.0

Add init command to create scaffolding pyproject.toml file.

v0.5.0

Add support for optional-dependencies.

v0.4.0

Fixed an issue when running yap through pipx in which the pip-compile binary was not found.

v0.3.0

Add the new version command to manage versions in pyproject.toml.

v0.2.0

Add --version flag to check the version of the tool.

v0.1.0

First release of the project. add, rm, compile commands.

Metadata

Release files for yapping 1.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for yapping 1.5.1
File Interpreter ABI Platform
yapping-1.5.1-py3-none-any.whl Python 3 none any Details

Release files / yapping-1.5.1-py3-none-any.whl

Download URL yapping-1.5.1-py3-none-any.whl
Size 7.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e021815e1e8eb36d6ae8bbda70a993efcb70f94f000d7e6a0eddf6782318e004
BLAKE2b-256 checksum
How to use checksums
acc11cad92400337efba5bb0b682f8797c03c6c58a0673e56a63032b7382ece0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

1.5.1 This release

1 release file

1.5.0

1 release file

1.4.4

1 release file

1.4.3

1 release file

1.4.1

1 release file

1.4.0

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.2.0

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page