Changelog

Version 2.2

Released on February 27, 2017, codename Dubnium

  • Minimum SQLAlchemy version is 0.8 due to use of sqlalchemy.inspect.
  • Added support for custom query_class and model_class as args to the SQLAlchemy constructor. (#328)
  • Allow listening to SQLAlchemy events on db.session. (#364)
  • Allow __bind_key__ on abstract models. (#373)
  • Allow SQLALCHEMY_ECHO to be a string. (#409)
  • Warn when SQLALCHEMY_DATABASE_URI is not set. (#443)
  • Don’t let pagination generate invalid page numbers. (#460)
  • Drop support of Flask < 0.10. This means the db session is always tied to the app context and its teardown event. (#461)
  • Tablename generation logic no longer accesses class properties unless they are declared_attr. (#467)

Version 2.1

Released on October 23rd 2015, codename Caesium

  • Table names are automatically generated in more cases, including subclassing mixins and abstract models.
  • Allow using a custom MetaData object.
  • Add support for binds parameter to session.

Version 2.0

Released on August 29th 2014, codename Bohrium

  • Changed how the builtin signals are subscribed to skip non Flask-SQLAlchemy sessions. This will also fix the attribute error about model changes not existing.
  • Added a way to control how signals for model modifications are tracked.
  • Made the SignallingSession a public interface and added a hook for customizing session creation.
  • If the bind parameter is given to the signalling session it will no longer cause an error that a parameter is given twice.
  • Added working table reflection support.
  • Enabled autoflush by default.
  • Consider SQLALCHEMY_COMMIT_ON_TEARDOWN harmful and remove from docs.

Version 1.0

Released on July 20th 2013, codename Aurum

  • Added Python 3.3 support.
  • Dropped 2.5 compatibility.
  • Various bugfixes
  • Changed versioning format to do major releases for each update now.

Version 0.16

  • New distribution format (flask_sqlalchemy)
  • Added support for Flask 0.9 specifics.

Version 0.15

  • Added session support for multiple databases

Version 0.14

  • Make relative sqlite paths relative to the application root.

Version 0.13

  • Fixed an issue with Flask-SQLAlchemy not selecting the correct binds.

Version 0.12

  • Added support for multiple databases.
  • Expose Flask-SQLAlchemy’s BaseQuery as db.Query.
  • Set default query_class for db.relation, db.relationship, and db.dynamic_loader to Flask-SQLAlchemy’s BaseQuery.
  • Improved compatibility with Flask 0.7.

Version 0.11

  • Fixed a bug introduced in 0.10 with alternative table constructors.

Version 0.10

  • Added support for signals.
  • Table names are now automatically set from the class name unless overriden.
  • Model.query now always works for applications directly passed to the SQLAlchemy constructor. Furthermore the property now raises an RuntimeError instead of being None.
  • added session options to constructor.
  • fixed a broken __repr__
  • db.Table is now a factor function that creates table objects. This makes it possible to omit the metadata.

Version 0.9

  • applied changes to pass the Flask extension approval process.

Version 0.8

  • added a few configuration keys for creating connections.
  • automatically activate connection recycling for MySQL connections.
  • added support for the Flask testing mode.

Version 0.7

  • Initial public release