Skip to main content

Latest PyPI version Python versions Django versions django CMS versions Coverage

django CMS Versioning

Installation

Requirements

django CMS Versioning requires that you have a django CMS 4.0 (or higher) project already running and set up.

Note: This package uses django-fsm-2 (actively maintained by Django Commons) instead of the original django-fsm for better support and maintenance.

To install

Run:

pip install djangocms-versioning

Add djangocms_versioning to your project’s INSTALLED_APPS.

Run:

python -m manage migrate djangocms_versioning
python -m manage create_versions --userid <user-id-of-migration-user>

to perform the application’s database migrations and (only if you have an existing database) add version objects needed to mark existing versions as draft.

Usage

To add versioning to your own models, start with the tutorial in docs/tutorials/versioning_a_blog.rst. More detailed integration instructions are available in docs/howto/versioning_integration.rst.

An example implementation can be found here:

Testing

To run all the tests the only thing you need to do is run:

pip install -r tests/requirements/requirements_dev.txt
pytest

Frontend assets

The JavaScript bundles in djangocms_versioning/static/ are built with webpack and managed via npm scripts. Node.js 24 is required (see .nvmrc).

Install dependencies:

npm install

Common commands:

npm run build       # production build
npm run build:dev   # development build (sourcemaps, no minification)
npm run watch       # rebuild on file change
npm run lint        # ESLint over the project's JS sources

End-to-end tests with Playwright:

npm run e2e         # runs the build with coverage instrumentation, then Playwright

Documentation

The documentation is online on readthedocs.

We maintain documentation in this repository under the docs folder using rst format.

To generate the HTML documentation you will need to install sphinx (pip install sphinx) and graphviz (as per your operating system’s package management system). You can then generate the docs using the following command:

Run:

cd docs/
make html

This should generate all html files from rst documents under docs/_build folder, which can be browsed.

Contributing

Because this is a an open-source project, we welcome everyone to get involved in the project and receive a reward for their contribution. Become part of a fantastic community and help us make django CMS the best CMS in the world.

We’ll be delighted to receive your feedback in the form of issues and pull requests. Before submitting your pull request, please review our contribution guidelines.

The project makes use of git pre-commit hooks to maintain code quality. Please follow the installation steps to get pre-commit setup in your development environment.

We’re grateful to all contributors who have helped create and maintain this package. Contributors are listed at the contributors section.

One of the easiest contributions you can make is helping to translate this addon on Transifex. To update transifex translation in this repo you need to download the transifex cli and run tx pull from the repo’s root directory. After downloading the translations do not forget to run the compilemessages management command.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangocms_versioning-2.7.0.tar.gz (637.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djangocms_versioning-2.7.0-py3-none-any.whl (684.0 kB view details)

Uploaded Python 3

File details

Details for the file djangocms_versioning-2.7.0.tar.gz.

File metadata

  • Download URL: djangocms_versioning-2.7.0.tar.gz
  • Upload date:
  • Size: 637.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for djangocms_versioning-2.7.0.tar.gz
Algorithm Hash digest
SHA256 754be46adc75f7cdc42bd2499db672de2a6635240b5829811f597844cb11f15f
MD5 167bd88932feef3f77bcac947ce4a5de
BLAKE2b-256 e7dd02288bb289c4d9c75103e0d9efdc77c20c6edff61975c91ff48ce171a10f

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangocms_versioning-2.7.0.tar.gz:

Publisher: publish-to-live-pypi.yml on django-cms/djangocms-versioning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file djangocms_versioning-2.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for djangocms_versioning-2.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6d8c3bde654b2e05dce6988b4927e1ae4ed0aff60306d0dfb35f209f6298da2
MD5 6e29c4e18acd16381eb8bc6dc28e2c67
BLAKE2b-256 f2e211317c3ecbab882c3488d8933d093c8634ab51c00091d239e7b0db80f7eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangocms_versioning-2.7.0-py3-none-any.whl:

Publisher: publish-to-live-pypi.yml on django-cms/djangocms-versioning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2.7.0 This release

2 files

2.6.1

2 files

2.6.0

2 files

2.5.1

2 files

2.5.0

2 files

2.4.0

2 files

2.3.2

2 files

2.3.1

2 files

2.3.0

2 files

2.2.1

2 files

2.2.0

2 files

2.1.0

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 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