summaryrefslogtreecommitdiff
path: root/doc/source/changelog.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/source/changelog.rst')
-rw-r--r--doc/source/changelog.rst342
1 files changed, 342 insertions, 0 deletions
diff --git a/doc/source/changelog.rst b/doc/source/changelog.rst
new file mode 100644
index 0000000..a61b6b9
--- /dev/null
+++ b/doc/source/changelog.rst
@@ -0,0 +1,342 @@
+0.7.3 (201x-xx-xx)
+---------------------------
+
+Changes
+******************
+
+-
+
+Documentation
+******************
+
+-
+
+Features
+******************
+
+-
+
+Fixed Bugs
+******************
+
+- #140: excludeTablesgetDiffOfModelAgainstModel is not passing excludeTables
+ correctly (patch by Jason Michalski)
+- #72: Regression against issue #38, migrate drops engine reference (patch by
+ asuffield@gmail.com)
+- #154: versioning/schema.py imports deprecated sqlalchemy.exceptions (patch by
+ Alex Favaro)
+- fix deprecation warning using MetaData.reflect instead of reflect=True
+ constructor argument
+- fix test failure by removing unsupported length argument for Text column
+
+0.7.2 (2011-11-01)
+---------------------------
+
+Changes
+******************
+
+- support for SQLAlchemy 0.5.x has been dropped
+- Python 2.6 is the minimum supported Python version
+
+Documentation
+******************
+
+- add :ref:`credits <credits>` for contributors
+- add :ref:`glossary <glossary>`
+- improve :ref:`advice on testing production changes <production testing
+ warning>`
+- improve Sphinx markup
+- refine :ref:`Database Schema Versioning <versioning-system>` texts, add
+ example for adding/droping columns (#104)
+- add more developer related information to :ref:`development` section
+- use sphinxcontrib.issuetracker to link to Google Code issue tracker
+
+Features
+******************
+
+- improved :pep:`8` compliance (#122)
+- optionally number versions with timestamps instead of sequences (partly
+ pulled from Pete Keen)
+- allow descriptions in SQL change script filenames (by Pete Keen)
+- improved model generation
+
+Fixed Bugs
+******************
+
+- #83: api test downgrade/upgrade does not work with sql scripts (pulled from
+ Yuen Ho Wong)
+- #105: passing a unicode string as the migrate repository fails (add
+ regression test)
+- #113: make_update_script_for_model fails with AttributeError: 'SchemaDiff'
+ object has no attribute 'colDiffs' (patch by Jeremy Cantrell)
+- #118: upgrade and downgrade functions are reversed when using the command
+ "make_update_script_for_model" (patch by Jeremy Cantrell)
+- #121: manage.py should use the "if __name__=='__main__'" trick
+- #123: column creation in make_update_script_for_model and required API change
+ (by Gabriel de Perthuis)
+- #124: compare_model_to_db gets confused by sqlite_sequence (pulled from
+ Dustin J. Mitchell)
+- #125: drop column does not work on persistent sqlite databases (pulled from
+ BenoƮt Allard)
+- #128: table rename failure with sqlalchemy 0.7.x (patch by Mark McLoughlin)
+- #129: update documentation and help text (pulled from Yuen Ho Wong)
+
+0.7.1 (2011-05-27)
+---------------------------
+
+Fixed Bugs
+******************
+
+- docs/_build is excluded from source tarball builds
+- use table.append_column() instead of column._set_parent() in
+ ChangesetColumn.add_to_table()
+- fix source and issue tracking URLs in documentation
+
+0.7 (2011-05-27)
+---------------------------
+
+Features
+******************
+
+- compatibility with SQLAlchemy 0.7
+- add :py:data:`migrate.__version__`
+
+Fixed bugs
+******************
+
+- fix compatibility issues with SQLAlchemy 0.7
+
+0.6.1 (2011-02-11)
+---------------------------
+
+Features
+******************
+
+- implemented column adding when foreign keys are present for sqlite
+- implemented columns adding with unique constraints for sqlite
+- implemented adding unique and foreign key constraints to columns
+ for sqlite
+- remove experimental `alter_metadata` parameter
+
+Fixed bugs
+******************
+
+- updated tests for Python 2.7
+- repository keyword in :py:func:`migrate.versioning.api.version_control` can
+ also be unicode
+- added if main condition for manage.py script
+- make :py:func:`migrate.changeset.constraint.ForeignKeyConstraint.autoname`
+ work with SQLAlchemy 0.5 and 0.6
+- fixed case sensitivity in setup.py dependencies
+- moved :py:mod:`migrate.changeset.exceptions` and
+ :py:mod:`migrate.versioning.exceptions` to :py:mod:`migrate.exceptions`
+- cleared up test output and improved testing of deprecation warnings.
+- some documentation fixes
+- #107: fixed syntax error in genmodel.py
+- #96: fixed bug with column dropping in sqlite
+- #94: fixed bug that prevented non-unique indexes being created
+- fixed bug with column dropping involving foreign keys
+- fixed bug when dropping columns with unique constraints in sqlite
+- rewrite of the schema diff internals, now supporting column
+ differences in additon to missing columns and tables.
+- fixed bug when passing empty list in
+ :py:func:`migrate.versioning.shell.main` failed
+- #108: Fixed issues with firebird support.
+
+0.6 (11.07.2010)
+---------------------------
+
+.. _backwards-06:
+
+.. warning:: **Backward incompatible changes**:
+
+ - :py:func:`migrate.versioning.api.test` and schema comparison functions
+ now all accept `url` as first parameter and `repository` as second.
+ - python upgrade/downgrade scripts do not import `migrate_engine`
+ magically, but recieve engine as the only parameter to function (eg.
+ ``def upgrade(migrate_engine):``)
+ - :py:meth:`Column.alter <migrate.changeset.schema.ChangesetColumn.alter>`
+ does not accept `current_name` anymore, it extracts name from the old
+ column.
+
+Features
+**************
+
+- added support for :ref:`firebird <firebird-d>`
+- added option to define custom templates through option ``--templates_path``
+ and ``--templates_theme``,
+ read more in :ref:`tutorial section <custom-templates>`
+- use Python logging for output, can be shut down by passing
+ ``--disable_logging`` to :py:func:`migrate.versioning.shell.main`
+- deprecated `alter_column` comparing of columns. Just use explicit parameter
+ change.
+- added support for SQLAlchemy 0.6.x by Michael Bayer
+- Constraint classes have `cascade=True` keyword argument to issue ``DROP
+ CASCADE`` where supported
+- added :py:class:`~migrate.changeset.constraint.UniqueConstraint`/
+ :py:class:`~migrate.changeset.constraint.CheckConstraint` and corresponding
+ create/drop methods
+- API `url` parameter can also be an :py:class:`Engine` instance (this usage is
+ discouraged though sometimes necessary)
+- code coverage is up to 80% with more than 100 tests
+- alter, create, drop column / rename table / rename index constructs now
+ accept `alter_metadata` parameter. If True, it will modify Column/Table
+ objects according to changes. Otherwise, everything will be untouched.
+- added `populate_default` bool argument to :py:meth:`Column.create
+ <migrate.changeset.schema.ChangesetColumn.create>` which issues corresponding
+ UPDATE statements to set defaults after column creation
+- :py:meth:`Column.create <migrate.changeset.schema.ChangesetColumn.create>`
+ accepts `primary_key_name`, `unique_name` and `index_name` as string value
+ which is used as contraint name when adding a column
+
+Fixed bugs
+*****************
+
+- :term:`ORM` methods now accept `connection` parameter commonly used for
+ transactions
+- `server_defaults` passed to :py:meth:`Column.create
+ <migrate.changeset.schema.ChangesetColumn.create>` are now issued correctly
+- use SQLAlchemy quoting system to avoid name conflicts (#32)
+- complete refactoring of :py:class:`~migrate.changeset.schema.ColumnDelta`
+ (#23)
+- partial refactoring of :py:mod:`migrate.changeset` package
+- fixed bug when :py:meth:`Column.alter
+ <migrate.changeset.schema.ChangesetColumn.alter>`\(server_default='string')
+ was not properly set
+- constraints passed to :py:meth:`Column.create
+ <migrate.changeset.schema.ChangesetColumn.create>` are correctly interpreted
+ (``ALTER TABLE ADD CONSTRAINT`` is issued after ``ATLER TABLE ADD COLUMN``)
+- script names don't break with dot in the name
+
+Documentation
+*********************
+
+- :ref:`dialect support <dialect-support>` table was added to documentation
+- major update to documentation
+
+
+0.5.4
+-----
+
+- fixed preview_sql parameter for downgrade/upgrade. Now it prints SQL if the step is SQL script and runs step with mocked engine to only print SQL statements if ORM is used. [Domen Kozar]
+- use entrypoints terminology to specify dotted model names (module.model:User) [Domen Kozar]
+- added engine_dict and engine_arg_* parameters to all api functions (deprecated echo) [Domen Kozar]
+- make --echo parameter a bit more forgivable (better Python API support) [Domen Kozar]
+- apply patch to refactor cmd line parsing for Issue 54 by Domen Kozar
+
+0.5.3
+-----
+
+- apply patch for Issue 29 by Jonathan Ellis
+- fix Issue 52 by removing needless parameters from object.__new__ calls
+
+0.5.2
+-----
+
+- move sphinx and nose dependencies to extras_require and tests_require
+- integrate patch for Issue 36 by Kumar McMillan
+- fix unit tests
+- mark ALTER TABLE ADD COLUMN with FOREIGN KEY as not supported by SQLite
+
+0.5.1.2
+-------
+
+- corrected build
+
+0.5.1.1
+-------
+
+- add documentation in tarball
+- add a MANIFEST.in
+
+0.5.1
+-----
+
+- SA 0.5.x support. SQLAlchemy < 0.5.1 not supported anymore.
+- use nose instead of py.test for testing
+- Added --echo=True option for all commands, which will make the sqlalchemy connection echo SQL statements.
+- Better PostgreSQL support, especially for schemas.
+- modification to the downgrade command to simplify the calling (old way still works just fine)
+- improved support for SQLite
+- add support for check constraints (EXPERIMENTAL)
+- print statements removed from APIs
+- improved sphinx based documentation
+- removal of old commented code
+- :pep:`8` clean code
+
+0.4.5
+-----
+
+- work by Christian Simms to compare metadata against databases
+- new repository format
+- a repository format migration tool is in migrate/versioning/migrate_repository.py
+- support for default SQL scripts
+- EXPERIMENTAL support for dumping database to model
+
+0.4.4
+-----
+
+- patch by pwannygoodness for Issue #15
+- fixed unit tests to work with py.test 0.9.1
+- fix for a SQLAlchemy deprecation warning
+
+0.4.3
+-----
+
+- patch by Kevin Dangoor to handle database versions as packages and ignore their __init__.py files in version.py
+- fixed unit tests and Oracle changeset support by Christian Simms
+
+0.4.2
+-----
+
+- package name is sqlalchemy-migrate again to make pypi work
+- make import of sqlalchemy's SchemaGenerator work regardless of previous imports
+
+0.4.1
+-----
+
+- setuptools patch by Kevin Dangoor
+- re-rename module to migrate
+
+0.4.0
+-----
+
+- SA 0.4.0 compatibility thanks to Christian Simms
+- all unit tests are working now (with sqlalchemy >= 0.3.10)
+
+0.3
+---
+
+- SA 0.3.10 compatibility
+
+0.2.3
+-----
+
+- Removed lots of SA monkeypatching in Migrate's internals
+- SA 0.3.3 compatibility
+- Removed logsql (trac issue 75)
+- Updated py.test version from 0.8 to 0.9; added a download link to setup.py
+- Fixed incorrect "function not defined" error (trac issue 88)
+- Fixed SQLite and .sql scripts (trac issue 87)
+
+0.2.2
+-----
+
+- Deprecated driver(engine) in favor of engine.name (trac issue 80)
+- Deprecated logsql (trac issue 75)
+- Comments in .sql scripts don't make things fail silently now (trac issue 74)
+- Errors while downgrading (and probably other places) are shown on their own line
+- Created mailing list and announcements list, updated documentation accordingly
+- Automated tests now require py.test (trac issue 66)
+- Documentation fix to .sql script commits (trac issue 72)
+- Fixed a pretty major bug involving logengine, dealing with commits/tests (trac issue 64)
+- Fixes to the online docs - default DB versioning table name (trac issue 68)
+- Fixed the engine name in the scripts created by the command 'migrate script' (trac issue 69)
+- Added Evan's email to the online docs
+
+0.2.1
+-----
+
+- Created this changelog
+- Now requires (and is now compatible with) SA 0.3
+- Commits across filesystems now allowed (shutil.move instead of os.rename) (trac issue 62)