Skip to content

Releases

0.0.50

Choose a tag to compare

@github-actions github-actions released this 13 Nov 17:00
273cb2e

SQLModel includes an official skill that helps coding agents use new features and recommended patterns for your installed version. Install it with uvx library-skills in your project. See Develop with AI.

Breaking Changes

0.0.49

Choose a tag to compare

@github-actions github-actions released this 11 Nov 09:16
89f6325

SQLModel includes an official skill that helps coding agents use new features and recommended patterns for your installed version. Install it with uvx library-skills in your project. See Develop with AI.

Upgrades

  • ⬆️ Add support for Python 3.15 and 3.15t. PR #2136 by @tiangolo.
  • ⬆️ Upgrade markdown-include-variants to 0.0.10. PR #2130 by @tiangolo.

Docs

  • 📝 Use Annotated for FastAPI parameters. PR #2133 by @tiangolo.
  • 📝 Adopt unversioned documentation snippets. PR #2132 by @tiangolo.
  • 🎨 Use the Zensical modern theme for docs. PR #2128 by @tiangolo.
  • 📝 Add AI development guidance and coding agent notices. PR #2127 by @tiangolo.
  • 📝 Hide formatting guards in HTML comments. PR #2115 by @tiangolo.
  • 🎨 Enable Ruff formatting for Python in Markdown. PR #2114 by @tiangolo.

Internal

0.0.48

Choose a tag to compare

@github-actions github-actions released this 06 Oct 21:44
5ce1a47

Features

Internal

0.0.47

Choose a tag to compare

@github-actions github-actions released this 23 Sep 17:30
1c46f0d

Features

  • ✨ Add direct support for PostgreSQL, MySQL, and MariaDB, include in CI tests. PR #2103 by @tiangolo.

0.0.46

Choose a tag to compare

@github-actions github-actions released this 22 Sep 09:38
72bca1e

Fixes

  • 🐛 Fix timedelta arithmetic with UTC datetime fields. PR #2101 by @tiangolo.

0.0.45

Choose a tag to compare

@github-actions github-actions released this 21 Sep 21:51
dcaf329

Breaking Changes

datetime fields now use UTCDateTime, a custom type based on DateTime(timezone=True). It requires aware datetime parameters, normalizes them to UTC, and returns aware UTC values from database reads, including on SQLite and MySQL/MariaDB. Pydantic's AwareDatetime uses the same type, while NaiveDatetime explicitly selects DateTime(timezone=False). Plain datetime validation still accepts both aware and naive values, but naive database parameters now raise an error.

Existing databases are not changed automatically. To retain naive storage, use NaiveDatetime or an explicit Field(sa_type=DateTime(timezone=False)). Explicit SQLAlchemy types retain their existing behavior. PostgreSQL needs a column migration that explicitly specifies the timezone of existing values. SQLite and MySQL/MariaDB keep their column definitions, but existing non-UTC values need a data migration before adopting the new type. Update datetime producers, query parameters, comparisons, and any database defaults to follow the new UTC convention.

Read Datetimes and Timezones: Upgrade Existing Applications before upgrading.

0.0.44

Choose a tag to compare

@github-actions github-actions released this 21 Sep 16:02
ff86856

Refactors

  • ♻️ Replace the dataclass_transform shim with typing_extensions. PR #2097 by @tiangolo.

0.0.43

Choose a tag to compare

@github-actions github-actions released this 21 Sep 15:25
648d757

Fixes

Internal

0.0.42

Choose a tag to compare

@github-actions github-actions released this 28 Aug 19:41
eff1be6

Features

  • 🏷️ Allow Discriminator type for discriminator parameter in Field. PR #1729 by @YuriiMotov.

0.0.41

Choose a tag to compare

@github-actions github-actions released this 28 Aug 19:31
43353a4

Refactors

  • 🗑️ Deprecate min_items and max_items parameters of Field. PR #1731 by @YuriiMotov.