Metadata-Version: 1.1
Name: django-north
Version: 0.3.0
Summary: Yet another way to manage migrations: DBA as a service
Home-page: https://github.com/peopledoc/django-north
Author: Lauréline Guérin
Author-email: laureline.guerin@people-doc.com
License: MIT
Description: ============
        Django North
        ============
        
        .. image:: https://badge.fury.io/py/django-north.png
            :target: https://pypi.org/pypi/django-north
        
        .. image:: https://travis-ci.org/peopledoc/django-north.png?branch=master
            :target: https://travis-ci.org/peopledoc/django-north
        
        .. image:: https://readthedocs.org/projects/django-north/badge/
            :target: http://django-north.readthedocs.io/en/latest/
        
        .. image:: https://img.shields.io/codecov/c/github/peopledoc/django-north/master.svg
            :target: https://codecov.io/github/peopledoc/django-north?branch=master
        
        Django library for managing and executing hand-written PostgreSQL migrations.
        
        Let your favorite DBAs define the database schema, and provide blue/green
        migration files. Drop django native migrations, and use DBA's migrations
        everywhere.
        
        Requirements
        ------------
        
        + **Postgresql only**
        + Django v1.11, v2.0, v2.1, v2.2
        + Running under Python 3.6, 3.7 or 3.8
        
        Documentation
        -------------
        
        The full documentation is at https://django-north.readthedocs.org.
        
        Quickstart
        ----------
        
        Install Django North::
        
            pip install django-north
        
        In your ``settings.py`` :
        
        .. code-block:: python
        
            INSTALLED_APPS = [
                # ...
                "django_north",
            ]
        
            NORTH_MANAGE_DB = True
            NORTH_MIGRATIONS_ROOT = '/path/to/sql/migrations/'
            NORTH_TARGET_VERSION = '1.42'
        
        
        Running Tests
        --------------
        
        You will need a usable Postgresql database in order to test the project. For example:
        
        ::
        
            source <YOURVIRTUALENV>/bin/activate
            export DATABASE_URL=postgres://USER:PASSWORD@HOST:PORT/NAME
            (myenv) $ pip install -r requirements_test.txt
        
        Run tests for a specific version
        
        ::
        
            (myenv) $ ./runtest
        
        
        Run tests for all versions (if tox is installed globally, you don't need a
        virtual environment)
        
        ::
        
            $ tox
        
        Using the project
        -----------------
        
        Many operations are documented in the Makefile. For more information, use:
        
        ::
        
            $ make help
        
        
        Credits
        ---------
        
        Tools used in rendering this package:
        
        *  Cookiecutter_
        *  `cookiecutter-djangopackage`_
        
        .. _Cookiecutter: https://github.com/audreyr/cookiecutter
        .. _`cookiecutter-djangopackage`: https://github.com/pydanny/cookiecutter-djangopackage
        
        
        
        
        History
        -------
        
        0.3.0 (2020-07-24)
        ++++++++++++++++++
        
        - Remove setting "NORTH_DISCARD_ALL"
        - Add function for septentrion settings
        - Fix classifiers
        - Removed the internal logic for applying migrations, use septentrion instead.
        - Add support for Django 2.2
        - `NORTH_AFTER_SCHEMA_FILES` and `NORTH_BEFORE_SCHEMA_FILES` can now accept glob string.
        
        0.2.5 (2019-01-22)
        ++++++++++++++++++
        
        - Add support for Django 2.1 & Python 3.7
        - Add setting `NORTH_AFTER_SCHEMA_FILES` for schema files after the main schema.
        - Adding setting `NORTH_BEFORE_SCHEMA_FILES`, to replace `NORTH_ADDITIONAL_SCHEMA_FILES`.
        - Deprecate setting `NORTH_ADDITIONAL_SCHEMA_FILES`.
        
        0.2.4 (2018-09-12)
        ++++++++++++++++++
        
        - Use `--database` option to determine which database to use in migrate command (#35)
        
        
        0.2.3 (2018-06-15)
        ++++++++++++++++++
        
        - Add support for Django 2.0 (#31)
        - Add a "DISCARD ALL" command run at the end of each script. It adds a new settings variable: ``NORTH_DISCARD_ALL`` (#33)
        
        
        0.2.2 (2018-02-01)
        ++++++++++++++++++
        
        - Flush command: do not flush migration tables.
        
        
        0.2.1 (2018-01-29)
        ++++++++++++++++++
        
        - Add `VACUUM` to `NORTH_NON_TRANSACTIONAL_KEYWORDS` default settings.
        - Add a setting `NORTH_SCHEMA_VERSION` to force the schema to be used to init a DB.
        
        
        0.2.0 (2017-10-16)
        ++++++++++++++++++
        
        - Backport the `sqlall` command.
        - Sanitize sql statements for SimpleBlock.
        
        
        0.1.8 (2017-09-20)
        ++++++++++++++++++
        
        - Detect manual files if not stored in the 'manual' dir.
        - Fix unicode error with SimpleBlock
        
        
        0.1.7 (2017-09-06)
        ++++++++++++++++++
        
        - Fix `get_applied_versions` result ordering.
        
        
        0.1.6 (2017-09-05)
        ++++++++++++++++++
        
        - Add tests for Django 1.11.
        
        
        0.1.5 (2017-05-24)
        ++++++++++++++++++
        
        - Fix showfixtures command for Django 1.10.
        
        
        0.1.4 (2017-05-10)
        ++++++++++++++++++
        
        - Do not fail if fixtures do not exist.
          Use the closest fixtures for DB init and flush command.
        - Add support of python3.
        
        
        0.1.3 (2017-04-18)
        ++++++++++++++++++
        
        - Use a Block if the sql file contains a 'ALTER TYPE' instruction
          Add a setting to customize the files to run in a Block.
        
        
        0.1.2 (2017-04-13)
        ++++++++++++++++++
        
        - Use a Block if the sql file contains a CONCURRENTLY instruction.
        
        
        0.1.1 (2017-04-11)
        ++++++++++++++++++
        
        - Add the possibility to configure the current version detector.
        
        
        0.1.0 (2017-03-28)
        ++++++++++++++++++
        
        - First release on PyPI.
        
Keywords: django-north
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Django
Classifier: Framework :: Django :: 1.11
Classifier: Framework :: Django :: 2.0
Classifier: Framework :: Django :: 2.1
Classifier: Framework :: Django :: 2.2
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
