Skip to main content

A command-line interface (CLI) application for managing versioning in a using Python

Project description

pyv

pyv is a command-line interface (CLI) application for managing versioning in a using Python.

It correspond to a versionning plan explained in the versionning_plan

Installation

  1. From pypi:
pip install pyv
  1. Clone the repository:
git clone https://github.com/your-username/pyv.git

# Navigate to the project directory:
cd versioning-cli

# Install the required dependencies:
pip install -r requirements.txt

Versioning App Usage

Run the CLI app using the following command format:

pyv app --dev <dev_subversion> --prod <prod_subversion> <action> [--level <level>]

Replace <dev_subversion> with the dev subversion in the format Vx.y.z , and <prod_subversion> with the prod subversion in the format Vx.y.z. The <action> parameter can be either post_prod or push_prod. The optional --level parameter specifies the level for the post_prod action (default: 1).

  • initialize the state as:
    • dev subversion: V{n}.0.0: for example V2.0.0
    • prod subversion (not_required if n==0): V{n-1}.p.q
  • actions
    • post_prod: return the version to create V{n-1}.(p+1).q if --level=1 or V{n-1}.p.(q+1) --level=1 (1 by default)
    • push_prod: return the version to create V{n+1}.0.0

If you have cloned the repository, instead, use python pyv/main.py instead of pyv

Examples

pyv app --dev V3.0.0 --prod V1.2.3 push_prod --level 2
pyv app --dev V2.0.0 --prod V1.2.3 post_prod --level 2

other examples:

$ pyv app --dev V3.0.0 --prod V1.2.3 push_prod --level 2
>> error: V3 do not follow V1

$ pyv app --dev V3.0.0 push_prod --level 2
>> error: if prod is not set dev should be V0.0.0 or V1.0.0

$ pyv app --dev V2.0.0 --prod V1.2.3 post_prod --level 2
>> your new version V1.2.4

$ pyv app --dev V2.0.0 --prod V1.2.3 push_prod --level 2
>> your new version V3.0.0

AutoVersioning Usage

Run the CLI app using the following command format:

pyv auto <repo_path>

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

versioning_python-0.1.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

versioning_python-0.1.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file versioning_python-0.1.0.tar.gz.

File metadata

  • Download URL: versioning_python-0.1.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.4 Linux/6.5.0-25-generic

File hashes

Hashes for versioning_python-0.1.0.tar.gz
Algorithm Hash digest
SHA256 35d5af665a904123504da7c741be6132bc8f07ed0311a432ef4e48ffaccbb60d
MD5 2b7809baf1592598b3da18eebdf54e10
BLAKE2b-256 7c0a5fef0af3fb322dd9c6b44e7e5649e7f4fe2ac942eceae841122b53057783

See more details on using hashes here.

File details

Details for the file versioning_python-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: versioning_python-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.4 Linux/6.5.0-25-generic

File hashes

Hashes for versioning_python-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3c6cd4d3aebd7c3ac749998697fd201130a2c189114a28028e69300f3f4fca2d
MD5 75520b42c47903abb84f27eaff6e0eaf
BLAKE2b-256 f46110dd0ae6815d004cfb1c693633034d3bbf43aec4be13190ec410ca12157d

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