Skip to content

Bump peewee from 4.1.0 to 4.2.2 - #73

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/peewee-4.2.2
Open

Bump peewee from 4.1.0 to 4.2.2#73
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/peewee-4.2.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 13, 2026

Copy link
Copy Markdown

Bumps peewee from 4.1.0 to 4.2.2.

Release notes

Sourced from peewee's releases.

4.2.2

  • Change Field.__hash__ again... fml. Use (model_cls, field name).
  • Fix Metadata.remove_ref() removing the wrong foreign-key when a model has multiple foreign-keys to the same target, as list.remove() matched the first entry via the overloaded Field.__eq__.
  • Fix a scalar subquery nested inside a function, Case or Cast collapsing to its alias in an UPDATE ... SET value and in ON CONFLICT DO UPDATE, as qualify_names() wrapped the value at SCOPE_COLUMN.
  • Fix namedtuples() on a query-builder (Table) query raising ValueError when a column name is not a valid identifier. The plain NamedTupleCursorWrapper now passes rename=True, matching the model path.
  • Fix outer joins in a joined model graph not hydrating a missing related object as None, so accessing the attribute raised AttributeError. The outer-join test had regressed to endswith('OUTER') (never true). It now also recognizes FULL JOIN and LEFT JOIN LATERAL.
  • Fix ModelSelect.select_extend() mutating its receiver's default-projection flag, so a base Model.select() reused as a subquery stopped collapsing to its primary key. It now flags the returned clone, matching select().
  • Fix distinct(True) and distinct(False) not clearing a prior distinct(*columns), so the query kept rendering DISTINCT ON (...) instead of a plain DISTINCT or no distinct at all.
  • Fix Postgres get_indexes() shredding an expression index whose key contains a comma, e.g. COALESCE(a, 0) split into two bogus columns. It joined the per-key definitions into a comma-delimited string and split on the comma. It now reads the key array directly.
  • Fix an empty insert (Model.insert(), insert({})) emitting DEFAULT VALUES and dropping python-side field defaults, inconsistent with a partial insert which backfills them. A model with no python defaults still uses DEFAULT VALUES.

View commits

4.2.1

Can't ship a stub that's not complete. Missed moving server_side_cursor() helper into the core psycopg helper.

View commits

4.2.0

  • Add django-style filter lookups: contains, startswith, endswith, between, is_null, not_in and iregexp.
  • Fix SQLite index value inlining to apply properly.
  • Fix PostgresqlDatabase(isolation_level=...) having no effect on transactions. Previously only atomic(isolation_level=...) worked.
  • Fix Ordering.collate() dropping the nulls= ordering.
  • Fix double-escaping of backticks in MySQL get_indexes().
  • Honor the windows= parameter of the Select constructor.
  • Remove vestigial Python 2 compat (reraise(), __div__, __nonzero__) and assorted dead internal code.
  • Remove TimestampField.local_to_utc() and TimestampField.utc_to_local().
  • Select.columns() no longer accepts and ignores keyword arguments.
  • Remove unused Metadata.get_rel_for_model().
  • Fix SelectBase.exists() ignoring its database argument.
  • Fix CursorWrapper indexing: cursor[n] raised IndexError for uncached rows and cursor[0] fetched the entire result set.
  • Fix .namedtuples() crashing on selected columns that are not valid Python identifiers.
  • Preserve materialized= when compounding CTEs via union()/union_all().
  • Fix ManyToManyField reads when the through-model foreign keys use the '!' backref sentinel.
  • Fix connection pooling with the mariadb connector - pooled connections were discarded on every checkout.
  • Fix sqliteq stop() to drain the write queue and return True.
  • Fix apsw aggregate registration binding every name to the last-registered aggregate class.
  • Fix two NameErrors in cysqlite_ext: blob_open() and progress().
  • Fix pwiz emitting an invalid attr= keyword instead of on_delete/on_update for reflected foreign keys.
  • Fix dataset infinite loop on self-referential foreign keys, crash on headerless CSV import, thaw() validating against export rather than import formats, and the importer mutating live model metadata.
  • Fix model_to_dict to honor only=/exclude= for many-to-many fields, fix resolve_multimodel_query on queries with narrowed selections.
  • Fix signals.Model.save(True) reporting created=False when force_insert is passed positionally.
  • Fix CompressedField crashing on str values.
  • Fix psycopg3 server-side cursors (missing withhold) and CockroachDB run_transaction retry detection under psycopg3.
  • Async queries are now logged to the peewee logger.

... (truncated)

Changelog

Sourced from peewee's changelog.

4.2.2

  • Change Field.__hash__ again... fml. Use (model_cls, field name).
  • Fix Metadata.remove_ref() removing the wrong foreign-key when a model has multiple foreign-keys to the same target, as list.remove() matched the first entry via the overloaded Field.__eq__.
  • Fix a scalar subquery nested inside a function, Case or Cast collapsing to its alias in an UPDATE ... SET value and in ON CONFLICT DO UPDATE, as qualify_names() wrapped the value at SCOPE_COLUMN.
  • Fix namedtuples() on a query-builder (Table) query raising ValueError when a column name is not a valid identifier. The plain NamedTupleCursorWrapper now passes rename=True, matching the model path.
  • Fix outer joins in a joined model graph not hydrating a missing related object as None, so accessing the attribute raised AttributeError. The outer-join test had regressed to endswith('OUTER') (never true). It now also recognizes FULL JOIN and LEFT JOIN LATERAL.
  • Fix ModelSelect.select_extend() mutating its receiver's default-projection flag, so a base Model.select() reused as a subquery stopped collapsing to its primary key. It now flags the returned clone, matching select().
  • Fix distinct(True) and distinct(False) not clearing a prior distinct(*columns), so the query kept rendering DISTINCT ON (...) instead of a plain DISTINCT or no distinct at all.
  • Fix Postgres get_indexes() shredding an expression index whose key contains a comma, e.g. COALESCE(a, 0) split into two bogus columns. It joined the per-key definitions into a comma-delimited string and split on the comma. It now reads the key array directly.
  • Fix an empty insert (Model.insert(), insert({})) emitting DEFAULT VALUES and dropping python-side field defaults, inconsistent with a partial insert which backfills them. A model with no python defaults still uses DEFAULT VALUES.

View commits

4.2.1

Can't ship a stub that's not complete. Missed moving server_side_cursor() helper into the core psycopg helper.

View commits

4.2.0

  • Add django-style filter lookups: contains, startswith, endswith, between, is_null, not_in and iregexp.
  • Fix SQLite index value inlining to apply properly.
  • Fix PostgresqlDatabase(isolation_level=...) having no effect on transactions. Previously only atomic(isolation_level=...) worked.
  • Fix Ordering.collate() dropping the nulls= ordering.
  • Fix double-escaping of backticks in MySQL get_indexes().
  • Honor the windows= parameter of the Select constructor.

... (truncated)

Commits
  • bf18304 4.2.2
  • 8fe254d Ensure we apply field defaults if no data is provided.
  • 8bb94a6 Better impl of get indexes for PG
  • a72a977 Fix calling simple distinct() not clearing previous setting.
  • fe3f01a Ensure select_extend() doesn't mutate base before cloning.
  • 8009c89 Ensure we properly set None on absent relation in join graph
  • c6d8862 Fix namedtuples() on plain cursor
  • 516e563 Update stub
  • 7b5deb2 CL update
  • f62902e Ensure that subqueries inside fn/case/cast render correctly.
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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)

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

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

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jul 13, 2026
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 python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants