Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump peewee from 3.14.0 to 3.16.0 #74

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 28, 2023

Bumps peewee from 3.14.0 to 3.16.0.

Release notes

Sourced from peewee's releases.

3.15.4

  • Raise an exception in ReconnectMixin if connection is lost while inside a transaction (if the transaction was interrupted presumably some changes were lost and explicit intervention is needed).
  • Add db.Model property to reduce boilerplate.
  • Add support for running prefetch() queries with joins instead of subqueries (this helps overcome a MySQL limitation about applying LIMITs to a subquery).
  • Add SQL AVG to whitelist to avoid coercing by default.
  • Allow arbitrary keywords in metaclass constructor, #2627
  • Add a pyproject.toml to silence warnings from newer pips when wheel package is not available.

This release has a small helper for reducing boilerplate in some cases by exposing a base model class as an attribute of the database instance.

# old:
db = SqliteDatabase('...')
class BaseModel(Model):
class Meta:
database = db
class MyModel(BaseModel):
pass
new:
db = SqliteDatabase('...')
class MyModel(db.Model):
pass

View commits

3.15.3

  • Add scalars() query method (complements scalar()), roughly equivalent to writing [t[0] for t in query.tuples()].
  • Small doc improvements
  • Fix and remove some flaky test assertions with Sqlite INSERT + RETURNING.
  • Fix innocuous failing Sqlite test on big-endian machines.

View commits

3.15.2

  • Fix bug where field-specific conversions were being applied to the pattern used for LIKE / ILIKE operations. Refs #2609
  • Fix possible infinite loop when accidentally invoking the __iter__ method on certain Column subclasses. Refs #2606
  • Add new helper for specifying which Model a particular selected column-like should be bound to, in queries with joins that select from multiple sources.

View commits

3.15.1

  • Fix issue introduced in Sqlite 3.39.0 regarding the propagation of column subtypes in subqueries. Affected sqlite changelog extension when used with JSON columns.
  • Fix bug where cockroachdb server version was not set when beginning a transaction on an unopened database.

... (truncated)

Changelog

Sourced from peewee's changelog.

3.16.0

This release contains backwards-incompatible changes in the way Peewee initializes connections to the underlying database driver. Previously, peewee implemented autocommit semantics on-top of the existing DB-API transactional workflow. Going forward, Peewee instead places the DB-API driver into autocommit mode directly.

Why this change?

Previously, Peewee emulated autocommit behavior for top-level queries issued outside of a transaction. This necessitated a number of checks which had to be performed each time a query was executed, so as to ensure that we didn't end up with uncommitted writes or, conversely, idle read transactions. By running the underlying driver in autocommit mode, we can eliminate all these checks, since we are already managing transactions ourselves.

Behaviorally, there should be no change -- Peewee will still treat top-level queries outside of transactions as being autocommitted, while queries inside of atomic() / with db: blocks are implicitly committed at the end of the block, or rolled-back if an exception occurs.

How might this affect me?

  • If you are using the underlying database connection or cursors, e.g. via Database.connection() or Database.cursor(), your queries will now be executed in autocommit mode.
  • The commit= argument is deprecated for the cursor(), execute() and execute_sql() methods.
  • If you have a custom Database implementation (whether for a database that is not officially supported, or for the purpose of overriding default behaviors), you will want to ensure that your connections are opened in autocommit mode.

Other changes:

  • Some fixes to help with packaging in Python 3.11.
  • MySQL get_columns() implementation now returns columns in their declared order.

View commits

3.15.4

  • Raise an exception in ReconnectMixin if connection is lost while inside a transaction (if the transaction was interrupted presumably some changes were lost and explicit intervention is needed).
  • Add db.Model property to reduce boilerplate.
  • Add support for running prefetch() queries with joins instead of subqueries (this helps overcome a MySQL limitation about applying LIMITs to a subquery).

... (truncated)

Commits
  • 7d6ad68 3.16.0
  • 7610757 Clarify docs on bulk_update()
  • b5cee5e Additional note to changelog
  • f599914 Restore the commit= parameter to minimize breaking 3rd party code.
  • 97f77a3 Prepare changelog notes.
  • aa8d4e7 Remove cursor withhold for psycopg2 server-side queries.
  • ca30a05 Additional doc changes for autocommit change.
  • cde3a44 Small doc change
  • 6783491 Remove additional db-api-related workarounds and APIs.
  • cc73066 Additional changes to shift things over to autocommit.
  • Additional commits viewable in compare view

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [peewee](https://github.com/coleifer/peewee) from 3.14.0 to 3.16.0.
- [Release notes](https://github.com/coleifer/peewee/releases)
- [Changelog](https://github.com/coleifer/peewee/blob/master/CHANGELOG.md)
- [Commits](coleifer/peewee@3.14.0...3.16.0)

---
updated-dependencies:
- dependency-name: peewee
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Feb 28, 2023
Copy link
Contributor Author

dependabot bot commented on behalf of github Jun 10, 2024

Superseded by #81.

@dependabot dependabot bot closed this Jun 10, 2024
@dependabot dependabot bot deleted the dependabot/pip/peewee-3.16.0 branch June 10, 2024 10:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants