Skip to main content

Simple Python Versioning Manager

When working on a simpe python project, you don't want to handle the setup.py, Makefile if any, and all the release pipeline. Spvm aims to that part for you.

Installation

spvm is on pypi.org and can be installed with a

pip install spvm

Requirements

  • python 3
  • docker*
  • a pypi.org account*
  • a repo for your project (github for instance)

(*: no necessary but available)

Quickstart

The spvm syntax tries to be simmilar to git and npm:

  • To initialize a spvm project use spvm init
  • You can run spvm major/minor/patch to update the verison of your project
  • Use spvm test to launch the tests on your project
  • Use spvm repair to run autopep8 on your project to make it pep8 compliant
  • Use spvm -s update to update the project's dependencies and check their signatures when available


Where is the version stored? In the setup.py ? In the __init__.py?

Because we wanted all the project's data to be in one place we made a package.json like object containing the project info: pyp.json

The version and the other project information such as the author's name, email are propagated in the setup.py and the __init__.py

You can find the pyp.json template on spvm/res/pyp.json:

{
    "project_info": {
        "name": "",
        "description": "",
        "license": "ISC",
        "url": ""
    },

    "project_authors": [
       {
        "name": "",
        "url": "",
        "email": ""
       }
    ],

    "project_vcs": {
        "code_repository": "",
        "docker_repository": "",
        "pypi_repository": "",

        "exclude_packages": ["test"],
        "version": "0.0.0",
        "ignored_errors": "E121,E123,E126,E226,E24,E704,W503,W504,E501",
        "release": {
            "commit_template": "Inscreased version to %s",
            "docker_tags": "latest,%s",
            "tag_template": "%s",
            "package_signing_key": "",
            "git_signing_key": ""
        }
    },

    "scripts": {
        "pre-test": "",
        "test": "pypi",
        "post-test":""
    },

    "project_requirements": {
        "python_version": ">=3.4, <4",
        "python_packages": []
    }

}

Metadata

Release files for spvm 0.0.39

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

Source distribution (sdist)

Source distribution for spvm 0.0.39
File Size Uploaded
spvm-0.0.39.tar.gz 17.0 kB Details

Built distribution (wheel)

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

Total release size: 37.0 kB

Release files / spvm-0.0.39.tar.gz

Download URL spvm-0.0.39.tar.gz
Size 17.0 kB
Tags Source
SHA-256 checksum
How to use checksums
9e6774bdaf9bccf8f4bf85f1211c1d4b157fc462132624874a27bec9e963afb1
BLAKE2b-256 checksum
How to use checksums
8bf58e88e3fa31d8f17daa2413ed6b317a8959aee6cad3b5965282d54fdd352f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.11.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

Release files / spvm-0.0.39-py3-none-any.whl

Download URL spvm-0.0.39-py3-none-any.whl
Size 20.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ee6dad0d72b02528ccfafc43ebc63059947ea1bc6973a103bac60d0cd1ba448c
BLAKE2b-256 checksum
How to use checksums
e303fd3d50c20cbaf46362de0c48d7e71dc220175804ceecd0489592c48f0adc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.11.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

Release history Release notifications | RSS feed

This release

0.0.39 This release

2 release files

0.0.38

2 release files

0.0.37

2 release files

0.0.36

2 release files

0.0.35

2 release files

0.0.34

2 release files

0.0.30

2 release files

0.0.29

2 release files

0.0.28

2 release files

0.0.27

2 release files

0.0.26

2 release files

0.0.25

2 release files

0.0.24

2 release files

0.0.23

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.13

2 release files

0.0.1

3 release files

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