PackageTrack
Sign in Get early access

sea-schema

🌿 SQL schema definition and discovery

0.18.1 12M downloads/mo #2815 most downloaded on crates.io SeaQL/sea-schema

What this package is like to depend on

Last release 1 months ago

01 Jul 2026

Ships unpredictably

gaps range from 1 weeks to 6 months

Nearly every release is documented

notes for 39 of 40 stable releases

6 versions withdrawn

withdrawn after publishing

5 years old

72 releases · first in 2021

12 releases in the last 12 months

see the full history below

Release timeline

72 releases · Apr 2021 to Jul 2026
2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60 of 72
  1. 0.18.1 01 Jul 2026
    Release notes

    Bug Fixes

    • Restore Send on Connection discovery futures under sqlx backends, fixing SchemaBuilder::sync() in SeaORM (SeaORM #3100) #170
    Open source →
    Release notes

    Bug Fixes

    • Restore Send on Connection discovery futures under sqlx backends, fixing SchemaBuilder::sync() in SeaORM (SeaORM #3100) https://github.com/SeaQL/sea-schema/pull/170
    Open source →
  2. 0.18.0 29 May 2026
    Release notes
    • Update to Rust Edition 2024 https://github.com/SeaQL/sea-schema/pull/147
    • Upgrade sea-query to 1.0
    • SQLite return all indexes
    • SQLite now writes all integers as BigInteger
    • Postgres support is_partial for index https://github.com/SeaQL/sea-schema/pull/150

    Bug Fixes

    • Fix MariaDB schema discovery
    • Fix SQLite primary key to be not null
    • Postgres fix enum discovery to be schema-specific https://github.com/SeaQL/sea-schema/pull/156
    • Postgres fix foreign key discovery to be schema-specific https://github.com/SeaQL/sea-schema/pull/157
    • Postgres fix foreign key discovery where components may have duplicate columns
    • Postgres fix unique key discovery where components have wrong orders
    Open source →
  3. 0.17.0-rc.17 13 Dec 2025 pre-release

    Nothing published for this version

  4. 0.17.0-rc.16 23 Nov 2025 pre-release

    Nothing published for this version

  5. 0.17.0-rc.15 15 Nov 2025 pre-release

    Nothing published for this version

  6. 0.17.0-rc.14 10 Nov 2025 pre-release

    Nothing published for this version

  7. 0.17.0-rc.12 08 Nov 2025 pre-release

    Nothing published for this version

  8. 0.17.0-rc.11 07 Nov 2025 pre-release

    Nothing published for this version

  9. 0.17.0-rc.10 25 Oct 2025 pre-release

    Nothing published for this version

  10. 0.17.0-rc.9 15 Oct 2025 pre-release

    Nothing published for this version

  11. 0.17.0-rc.8 15 Oct 2025 pre-release

    Nothing published for this version

  12. 0.17.0-rc.7 16 Sep 2025 pre-release

    Nothing published for this version

  13. 0.17.0-rc.6 19 Aug 2025 pre-release

    Nothing published for this version

  14. 0.17.0-rc.5 07 Aug 2025 pre-release

    Nothing published for this version

  15. 0.17.0-rc.4 06 Aug 2025 pre-release

    Nothing published for this version

  16. 0.17.0-rc.3 19 Jul 2025 pre-release

    Nothing published for this version

  17. 0.17.0-rc.2 08 Jun 2025 pre-release

    Nothing published for this version

  18. 0.17.0-rc.1 28 May 2025 pre-release

    Nothing published for this version

  19. 0.16.2 07 May 2025
    Release notes

    Enhancements

    • Map postgres-vector type in discovery #146
    Open source →
    Release notes

    Enhancements

    • Map postgres-vector type in discovery https://github.com/SeaQL/sea-schema/pull/146
    Open source →
  20. 0.16.1 26 Dec 2024
    Release notes

    Features

    • Added IndexType::Vector to MySQL (behind feature planetscale) #139
    • Implement postgres vector extension #137

    Bug fixes

    • Fix enum values ordering #138
    Open source →
    Release notes

    Features

    • Added IndexType::Vector to MySQL (behind feature planetscale) https://github.com/SeaQL/sea-schema/pull/139
    • Implement postgres vector extension https://github.com/SeaQL/sea-schema/pull/137

    Bug fixes

    • Fix enum values ordering https://github.com/SeaQL/sea-schema/pull/138
    Open source →
  21. 0.16.0 17 Oct 2024
    Release notes

    Upgrades

    • Upgrade sea-query to 0.32.0 #136
    • Upgrade sea-query-binder to 0.7.0 #136
    • Upgrade sqlx to 0.8 #136
    Open source →
    Release notes

    Versions

    • sea-schema/0.16.0-rc.1: 2024-08-09

    Upgrades

    • Upgrade sea-query to 0.32.0 https://github.com/SeaQL/sea-schema/pull/136
    • Upgrade sea-query-binder to 0.7.0 https://github.com/SeaQL/sea-schema/pull/136
    • Upgrade sqlx to 0.8 https://github.com/SeaQL/sea-schema/pull/136
    Open source →
  22. 0.16.0-rc.1 09 Aug 2024 pre-release
    Release notes

    Upgrades

    • Upgrade sea-query to 0.32.0-rc #136
    • Upgrade sea-query-binder to 0.7.0-rc #136
    • Upgrade sqlx to 0.8 #136
    Open source →
  23. 0.15.0 02 Aug 2024
    Release notes

    Features

    • Rework SQLite data type mapping #117
    • Update binary and bit data types mapping #122

    Bug fixes

    • Fix constraint query when table is partitioned #125
    • Fix Postgres foreign key column without unique constraint #131
    • Fix discovery of MySQL, SQLite and PostgreSQL unique indexes #133

    Breaking changes

    • SchemaProbe::query_tables(..) changed to SchemaProbe::query_tables(&self, ..) #127
    • SchemaProbe::has_table(..) changed to SchemaProbe::has_table(&self, ..) #126
    • SchemaProbe::has_column(..) changed to SchemaProbe::has_column(&self, ..) #126
    • SchemaProbe::has_index(..) changed to SchemaProbe::has_index(&self, ..) #126

    Enhancements

    • Added non-TLS runtime #134

    Upgrades

    • Upgrade syn to 2 #129
    Open source →
    Release notes

    Versions

    • sea-schema/0.15.0-rc.1: 2024-01-31
    • sea-schema/0.15.0-rc.2: 2024-02-02
    • sea-schema/0.15.0-rc.3: 2024-03-15
    • sea-schema/0.15.0-rc.4: 2024-03-24
    • sea-schema/0.15.0-rc.5: 2024-05-02
    • sea-schema/0.15.0-rc.6: 2024-05-03
    • sea-schema/0.15.0-rc.7: 2024-06-19
    • sea-schema-derive/0.3.0: 2024-08-02

    Features

    • Rework SQLite data type mapping https://github.com/SeaQL/sea-schema/pull/117
    • Update binary and bit data types mapping https://github.com/SeaQL/sea-schema/pull/122

    Bug fixes

    • Fix constraint query when table is partitioned https://github.com/SeaQL/sea-schema/pull/125
    • Fix Postgres foreign key column without unique constraint https://github.com/SeaQL/sea-schema/pull/131
    • Fix discovery of MySQL, SQLite and PostgreSQL unique indexes https://github.com/SeaQL/sea-schema/pull/133

    Breaking changes

    • SchemaProbe::query_tables(..) changed to SchemaProbe::query_tables(&self, ..) https://github.com/SeaQL/sea-schema/pull/127
    • SchemaProbe::has_table(..) changed to SchemaProbe::has_table(&self, ..) https://github.com/SeaQL/sea-schema/pull/126
    • SchemaProbe::has_column(..) changed to SchemaProbe::has_column(&self, ..) https://github.com/SeaQL/sea-schema/pull/126
    • SchemaProbe::has_index(..) changed to SchemaProbe::has_index(&self, ..) https://github.com/SeaQL/sea-schema/pull/126

    Enhancements

    • Added non-TLS runtime https://github.com/SeaQL/sea-schema/pull/134

    Upgrades

    • Upgrade syn to 2 https://github.com/SeaQL/sea-schema/pull/129
    Open source →
  24. 0.15.0-rc.7 19 Jun 2024 pre-release
    Release notes

    Features

    • Rework SQLite data type mapping #117
    • Update binary and bit data types mapping #122

    Bug fixes

    • Fix constraint query when table is partitioned #125
    • Fix Postgres foreign key column without unique constraint #131
    • Fix discovery of MySQL, SQLite and PostgreSQL unique indexes #133

    Breaking changes

    • SchemaProbe::query_tables(..) changed to SchemaProbe::query_tables(&self, ..) #127
    • SchemaProbe::has_table(..) changed to SchemaProbe::has_table(&self, ..) #126
    • SchemaProbe::has_column(..) changed to SchemaProbe::has_column(&self, ..) #126
    • SchemaProbe::has_index(..) changed to SchemaProbe::has_index(&self, ..) #126

    Enhancements

    • Added non-TLS runtime #134
    Open source →
  25. 0.15.0-rc.6 03 May 2024 pre-release

    Nothing published for this version

  26. 0.15.0-rc.5 02 May 2024 pre-release

    Nothing published for this version

  27. 0.15.0-rc.4 24 Mar 2024 pre-release

    Nothing published for this version

  28. 0.15.0-rc.3 15 Mar 2024 pre-release

    Nothing published for this version

  29. 0.15.0-rc.2 02 Feb 2024 pre-release

    Nothing published for this version

  30. 0.15.0-rc.1 31 Jan 2024 pre-release

    Nothing published for this version

  31. 0.14.2 18 Jan 2024
    Release notes

    Bug fixes

    • Fix composite foreign key discovery for Postgres https://github.com/SeaQL/sea-schema/pull/118
    • Fix composite foreign key discovery for SQLite https://github.com/SeaQL/sea-schema/pull/119

    House keeping

    • Fix clippy warnings on 1.75 https://github.com/SeaQL/sea-schema/pull/121
    Open source →
  32. 0.14.1 14 Sep 2023
    Release notes
    • Added has_index to SchemaProbe https://github.com/SeaQL/sea-schema/pull/115
    Open source →
  33. 0.14.0 21 Jul 2023
    Release notes

    Upgrades

    • Upgrade sea-query to 0.30 https://github.com/SeaQL/sea-schema/pull/114
    • Upgrade sea-query-binder to 0.5 https://github.com/SeaQL/sea-schema/pull/114
    • Upgrade sqlx to 0.7 https://github.com/SeaQL/sea-schema/pull/114

    Bug fixes

    • Fix PostgreSQL enum arrays and case-sensitive types https://github.com/SeaQL/sea-schema/pull/108
    Open source →
  34. 0.12.0 20 Jul 2023
    Release notes
    • 2023-03-22: 0.12.0-rc.1
    • 2023-05-18: 0.12.0-rc.2

    Features and upgrades

    • Skip parsing partitioned Postgres tables https://github.com/SeaQL/sea-schema/pull/105
    • Upgrade heck dependency in sea-schema-derive to 0.4 https://github.com/SeaQL/sea-schema/pull/103
    • Upgrade sea-query to 0.29 https://github.com/SeaQL/sea-schema/pull/104
    • Upgrade sea-query-binder to 0.4 https://github.com/SeaQL/sea-schema/pull/104
    • Replace the use of SeaRc<T> where T isn't dyn Iden with RcOrArc<T> https://github.com/SeaQL/sea-schema/pull/107
    • Customized parsing logic for MySQL and MariaDB column default https://github.com/SeaQL/sea-schema/pull/110
      • Properly distinguish between Value and Expression, and the very special CURRENT_TIMESTAMP
    • Improve SQLite's column default parsing logic https://github.com/SeaQL/sea-schema/pull/112

    Breaking changes

    • API now returns Result instead of panic on errors https://github.com/SeaQL/sea-schema/pull/109
    • ColumnDefault changed from a struct into an enum https://github.com/SeaQL/sea-schema/pull/110
    • Added CurrentTimestamp variant to SQLite's DefaultType https://github.com/SeaQL/sea-schema/pull/112
    Open source →
  35. 0.12.0-rc.2 18 May 2023 pre-release

    Nothing published for this version

  36. 0.12.0-rc.1 22 Mar 2023 pre-release

    Nothing published for this version

  37. 0.11.0 05 Jan 2023
    Release notes
    • Upgrade SeaQuery to 0.28 https://github.com/SeaQL/sea-schema/pull/90
    • Changed all version = "^x.y.z" into version = "x.y.z" and disabled default features and enable only the needed ones https://github.com/SeaQL/sea-schema/pull/93
    • Skip parsing Postgres check constraints when check expression is empty https://github.com/SeaQL/sea-schema/pull/96
    • Parsing Postgres citext column type https://github.com/SeaQL/sea-schema/pull/94
    Open source →
  38. 0.10.3 16 Nov 2022
    Release notes
    • Backward compatible schema discovery for MySQL 5.6 https://github.com/SeaQL/sea-schema/pull/86
    Open source →
  39. 0.10.2 27 Oct 2022
    Release notes
    • Fix parsing of Postgres user-defined types https://github.com/SeaQL/sea-schema/pull/84
    Open source →
  40. 0.10.1 23 Oct 2022 withdrawn
    Release notes
    • Parse & write Postgres array datatypes https://github.com/SeaQL/sea-schema/pull/83
    Open source →
  41. 0.10.0 18 Oct 2022 withdrawn
    Release notes
    • Upgrade SeaQuery to 0.27 https://github.com/SeaQL/sea-schema/pull/81
    Open source →
  42. 0.9.4 16 Sep 2022
    Release notes
    • Parsing SQLite integer column types without space in it https://github.com/SeaQL/sea-schema/pull/77
    Open source →
  43. 0.9.3 17 Jul 2022
    Release notes
    • SQLite real datatype maps to double https://github.com/SeaQL/sea-schema/pull/75
    • Discover SYSTEM VERSIONED tables for MariaDB https://github.com/SeaQL/sea-schema/pull/76
    Open source →
  44. 0.9.2 04 Jul 2022
    Release notes
    • PostgreSQL datetime and timestamp datatype are equivalent https://github.com/SeaQL/sea-schema/pull/69
    • MySQL VarBinary column type mapping https://github.com/SeaQL/sea-schema/pull/67
    • Upgrade sqlx to 0.6
    • Upgrade sea-query to 0.26
    Open source →
  45. 0.9.1 01 Jul 2022 withdrawn

    Nothing published for this version

  46. 0.9.0 30 Jun 2022 withdrawn

    Nothing published for this version

  47. 0.8.1 17 Jun 2022
    Release notes
    • Fix SQLx version to ^0.5 https://github.com/SeaQL/sea-schema/pull/70
    • PostgreSQL query non-key foreign key info https://github.com/SeaQL/sea-schema/pull/65
    Open source →
  48. 0.8.0 09 May 2022
    Release notes
    • Dropping migration entirely; introducing SchemaProbe
    Open source →
  49. 0.7.1 26 Mar 2022
    Release notes
    • Support SeaORM 0.7.0
    • Support Postgres jsonb in entity generation https://github.com/SeaQL/sea-schema/pull/51
    Open source →
  50. 0.7.0 26 Mar 2022

    Nothing published for this version

  51. 0.6.0 13 Mar 2022
    Release notes
    • Write MySQL unsigned integer types https://github.com/SeaQL/sea-schema/pull/37
    • Fix Sqlite BLOB type https://github.com/SeaQL/sea-schema/pull/44
    • Migrate with sea_orm::DbConn https://github.com/SeaQL/sea-schema/pull/49
    Open source →
  52. 0.5.1 07 Feb 2022
    Release notes
    • Add migration::prelude to replace wildcard imports #43
    Open source →
  53. 0.5.0 06 Feb 2022
    Release notes
    • Fix Postgres discover duplicated foreign keys by @billy1624 in https://github.com/SeaQL/sea-schema/pull/30
    • Schema Manager by @billy1624 in https://github.com/SeaQL/sea-schema/pull/26

    Full Changelog: https://github.com/SeaQL/sea-schema/compare/0.4.0...0.5.0

    Open source →
  54. 0.4.0 25 Dec 2021
    Release notes
    • SQLite schema discovery https://github.com/SeaQL/sea-schema/pull/34
    Open source →
  55. 0.3.1 12 Dec 2021
    Release notes
    • Add support for the Postgres interval type by @autarch in https://github.com/SeaQL/sea-schema/pull/20
    • CI: Clippy, MySQL & Postgres by @billy1624 in https://github.com/SeaQL/sea-schema/pull/21
    • Write MySQL & Postgres Enum Columns by @billy1624 in https://github.com/SeaQL/sea-schema/pull/29

    Full Changelog: https://github.com/SeaQL/sea-schema/compare/0.2.9...0.3.1

    Open source →
  56. 0.3.0 11 Dec 2021 withdrawn

    Nothing published for this version

  57. 0.2.10 11 Dec 2021 withdrawn

    Nothing published for this version

  58. 0.2.9 23 Sep 2021
    Release notes
    • [#18] MySQL: handle panic upon unique constraint
    Open source →
  59. 0.2.8 17 Sep 2021
    Release notes
    • Fix Postgres TimestampWithTimeZone
    Open source →
  60. 0.2.7 22 Aug 2021
    Release notes
    • Use SeaRc to support SeaQuery's thread-safe
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive