Django reusable app to show your project version
Project description
django-project-version is a Django reusable app to show your project version
Installation
Obtain your copy of source code from the git repository: $ git clone https://github.com/DCOD-OpenSource/django-project-version.git. Or download the latest release from https://github.com/DCOD-OpenSource/django-project-version/tags/.
Run $ python ./setup.py install from the repository source tree or unpacked archive. Or use pip: $ pip install django-project-version.
Configuration
Add "djversion" to settings.INSTALLED_APPS.
# settings.py
INSTALLED_APPS += [
"djversion",
]
Settings
- DJVERSION_VERSION
Contains project version. Defaults to None.
- DJVERSION_UPDATED
Contains project update date or datetime. Defaults to None.
- DJVERSION_FORMAT_STRING
Contains version and updated format string. Defaults to "{version} ({updated})".
- DJVERSION_GIT_REPO_PATH
Contains path to git repository from where version info can get. Defaults to None.
- DJVERSION_GIT_USE_TAG
Indicate usage of git repository current tag as project version. Defaults to False.
- DJVERSION_GIT_USE_COMMIT
Indicate usage of git repository last commit hash as project version. Defaults to False.
Usage
If you want always have "VERSION" variable in templates context, just add "djversion.context_processors.version" to settings.TEMPLATE_CONTEXT_PROCESSORS
# settings.py
TEMPLATE_CONTEXT_PROCESSORS += [
"djversion.context_processors.version",
]
Or you can use project_version templatetag which can be loaded from djversion_tags.
{# footer.html #}
{% load djversion_tags %}
{% project_version as VERSION %}
{{ VERSION }}
Also simple management command print-version which prints project version to stdout is available. Just run:
django-admin print-version
or
./manage.py print-version
Advanced features
If you want to have REST-style view with your project version:
Install django-project-version with additional dependencies: $ pip install django-project-version[rest].
Extend you settings.INSTALLED_APPS by adding "rest_framework".
# settings.py
INSTALLED_APPS += [
"rest_framework",
]
Add "djversion" to your URLs definitions:
# urls.py
from django.urls import re_path, include
urlpatterns += [
re_path(r"^version/", include("djversion.urls")),
]
Or to use information from the project git repository as project version:
Install django-project-version with additional dependencies: $ pip install django-project-version[git].
Configure git related settings.
Contributing
Install GNU Make
Install and configure pyenv and pyenv-virtualenv plugin
Install and configure direnv
Create environment config from example
cp .env.example .env
Install development dependencies:
make install
Create your fix/feature branch:
git checkout -b my-new-fix-or-feature
Check code style and moreover:
make check
Run tests:
make test
Push to the branch:
git push origin my-new-fix-or-feature
Licensing
django-project-version uses the MIT license. Please check the MIT-LICENSE file for more details.
Contacts
Project Website: https://github.com/DCOD-OpenSource/django-project-version/
Author: DCOD <contact@d-cod.com>
For contributors list see CONTRIBUTORS file.
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 django-project-version-0.19.0.zip
.
File metadata
- Download URL: django-project-version-0.19.0.zip
- Upload date:
- Size: 24.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6232a0f099eb04541325aa03e29f86b6ebbe33be98f5dfcf293beefd68a536d6 |
|
MD5 | fb55e32eab18185b4f889f943df77282 |
|
BLAKE2b-256 | 95e5d05f976f41b48abc04b19e439b43b43c3f1143493cbea8077bed3a7fe69f |
File details
Details for the file django_project_version-0.19.0-py3-none-any.whl
.
File metadata
- Download URL: django_project_version-0.19.0-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e13ea9e70b1bb09dce78dc6d791948bc40be137702f94e6181318f4b15954d38 |
|
MD5 | ea7b26fbcacea5290cf1849cfd4d0dc7 |
|
BLAKE2b-256 | f134c8cf48a975be845cb088e3989a0019569267b14eaffd29f4ac6a9c37a189 |