Skip to main content

Detect backward incompatible migrations for your django project

Project description

Detect backward incompatible migrations for your django project. It will save you time by making sure migrations will not break anything.

https://travis-ci.org/3YOURMIND/django-migration-linter.svg?branch=master https://img.shields.io/pypi/v/django-migration-linter.svg https://img.shields.io/github/license/3yourmind/django-migration-linter.svg https://img.shields.io/badge/PR-welcome-green.svg https://img.shields.io/badge/3YOURMIND-Hiring-brightgreen.svg https://img.shields.io/github/stars/3YOURMIND/django-migration-linter.svg?style=social&label=Stars

Installation

pip install django-migration-linter

Usage

django-migration-linter DJANGO_PROJECT_FOLDER [GIT_COMMIT_ID] [--ignore-name-contains=IGNORE_NAME_CONTAINS] [--include-apps INCLUDE_APPS [INCLUDE_APPS ...] | --exclude-apps EXCLUDE_APPS [EXCLUDE_APPS ...]]

Parameter

Description

DJANGO_PROJECT_FOLDER

An absolute or relative path to the django project.

GIT_COMMIT_ID

If specified, only migrations since this commit will be taken into account. If not specified, all migrations will be linted.

--ignore-name-contains IGNORE_NAME_CONTAINS

Ignore migrations containing this name.

--ignore-name IGNORE_NAME [IGNORE_NAME ...]

Ignore migrations with exactly one of these names.

--include-apps INCLUDE_APPS [INCLUDE_APPS ...]

Check only migrations that are in the specified django apps.

--exclude-apps EXCLUDE_APPS [EXCLUDE_APPS ...]

Ignore migrations that are in the specified django apps.

--verbose or -v

Print more information during execution.

--database DATABASE

Specify the database for which to generate the SQL. Defaults to default.

Examples

3YOURMIND is running the linter on Bitbucket Pipelines on every build getting pushed. Checkout the examples/ folder to see how you could integrate the linter in your test suite.

Tests

The easiest way to run the tests is to invoke tox.

Contributing

First, thank you very much if you want to contribute to the project. Please base your work on the dev branch and also target this branch in your pull request.

License

django-migration-linter is released under the Apache 2.0 License.

Project details


Download files

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

Source Distribution

django-migration-linter-0.0.6.tar.gz (13.4 kB view hashes)

Uploaded Source

Built Distribution

django_migration_linter-0.0.6-py2.py3-none-any.whl (18.7 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page