Skip to content

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

Notifications You must be signed in to change notification settings

Hermann-web/pyv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyv

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

It correspond to a scpecific versioning plan explained in the versioning_plan. This versioning plan is compatible with the Semantic Versioning Specification

Installation

  1. From pypi:
pip install versioning-python
  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.

Related works

About

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

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published