github encode/databases 0.8.0
Version 0.8.0

latest release: 0.9.0
14 months ago

Breaking

This release improves isolation of connections and transactions across concurrent tasks:

  • Database connections are now task-local and are not inherited by child tasks
  • The @db.transaction decorator uses the calling task's connection
  • Each new task uses a new connection unless a connection is explicitly provided

These changes improve the consistency of behavior and fix bugs where connections and transactions were not properly isolated such as: #123, #125, #134, #155, #424, and #452.

In most cases, these changes should not be breaking. However, if using an open transaction across tasks, the active connection (db.connection()) now needs to be explicitly passed to each task. See the new documentation for an example.

Added

  • Allow SQLite query parameters and support cached databases (#561)
  • Support for unix socket for aiomysql and asyncmy (#551)

Changed

  • Improve isolation of connections and transactions during concurrent usage (#546)
  • Bump requests from 2.28.1 to 2.31.0 (#562)
    zanieb marked this conversation as resolved.
  • Bump starlette from 0.20.4 to 0.27.0 (#560)
  • Bump up asyncmy version to fix No module named 'asyncmy.connection' (#553)
  • Bump wheel from 0.37.1 to 0.38.1 (#524)

Fixed

  • Fix the type-hints using more standard mode (#526)

Don't miss a new databases release

NewReleases is sending notifications on new releases.