Simple Python Versioning Manager
Project description
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": []
}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file spvm-0.0.39.tar.gz
.
File metadata
- Download URL: spvm-0.0.39.tar.gz
- Upload date:
- Size: 17.0 kB
- Tags: Source
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e6774bdaf9bccf8f4bf85f1211c1d4b157fc462132624874a27bec9e963afb1 |
|
MD5 | e2cb785e7e82a12972c1608bc66e5d7c |
|
BLAKE2b-256 | 8bf58e88e3fa31d8f17daa2413ed6b317a8959aee6cad3b5965282d54fdd352f |
File details
Details for the file spvm-0.0.39-py3-none-any.whl
.
File metadata
- Download URL: spvm-0.0.39-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee6dad0d72b02528ccfafc43ebc63059947ea1bc6973a103bac60d0cd1ba448c |
|
MD5 | fdb166bdd7357f21248be57d093b470b |
|
BLAKE2b-256 | e303fd3d50c20cbaf46362de0c48d7e71dc220175804ceecd0489592c48f0adc |