Changelog #
All notable changes will be documented in this file.
The format is loosely based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased #
v0.24.0 #
- changed: Updated
decimaldependency requirement to~> 3.0 - changed: Updated
ecto_sqldependency requirement to~> 3.14 - changed: Updated
ectodependency requirement to~> 3.14 - changed: Require elixir
~> 1.17
v0.23.0 #
- changed: Updated decimal requirements
v0.22.0 #
- added: Ability to use
values/1in ecto queries. - changed: Updated locked dependencies.
v0.21.0 #
- added: Ability to specify type extensions for custom sqlite types. See: #167.
v0.20.0 #
- added: Ecto
identifier/1support - changed: Bump (and restrict) Ecto to
3.13.0
v0.19.0 #
- changed: Configurable encoding for
:mapand:array, allowing usage of SQLite's JSONB storage format.
v0.18.1 #
- fixed: Support both
JasonandJSON.
v0.18.0 #
- changed: Drop Elixir
1.14support. Elixir1.18was released and I am only supporting 3 minor versions back. - fixed: Pass through unrecognized values for float, bool, and json decodes.
v0.17.5 #
- fixed: Report correct error for value lists in joins.
v0.17.4 #
- added: Documentation for
default_transaction_mode. - changed: Clarified some documentation.
v0.17.3 #
- fixed: Handle placeholders for
insert_allcalls. - changed: Added cell-wise placeholders for inserts.
v0.17.2 #
- fixed: Handle datetime serialization format via
:datetime_typeconfig. - fixed: Retain microsecond serialization.
v0.17.1 #
- changed: Bump minimum ecto to
3.12.
v0.17.0 #
- added: Added an explicit
:integercolumn type support. Under the hood it is stored the same regardless. - fixed: Handle new style of distinct expressions introduce upstream in Ecto
3.12. - changed: Allow
insert_allto no longer require a where clause. - changed: Made some public functions now private.
- changed: Test against elixir 1.17 and OTP 27, 26, and 25.
v0.16.0 #
- changed: Set minimum
exqlitedependency to0.22.
v0.15.1 #
- fixed: Encode nil blobs. This was previously unhandled.
v0.15.0 #
- fixed: Support
nildecoding for:decimal. - changed: Dropped support for Elixir v1.13.
- changed: Added Elixir v1.16 to CI build.
- changed: Bump minimum
exqliteto~ 0.19.
v0.14.0 #
- added: Support for encoding nil values in
:utc_datetime,:utc_datetime_usec,:naive_datetime, and:naive_datetime_useccolumn dates. - added: Allow subquery values in
insert_all.
v0.13.0 #
- added: Support fragment splicing.
- added: Support parent_as with combination queries.
- changed: Don't need to consider `{:maybe, type}`` when loading or dumping.
- changed: Handle nil values in dumpers and loaders.
v0.12.0 #
- changed: raise if an in memory database is opened with a pool_size != 1
- added: support
{:unsafe_fragment, ".."}as a conflict target. - changed: Dropped support for Elixir
1.12. - changed: Dropped support for OTP 23.
v0.11.0 #
- added: Support for DDL transactions.
v0.10.4 #
- fixed: Handle binary uuid casting when
binary_idis specified.
v0.10.3 #
- fixed: Handle unique constraint error formats.
- changed: Updated dependencies.
v0.10.2 #
- added: Missing support for
Datetype.
v0.10.1 #
- fixed: Ignore bad
initfile when usingdump_cmd/3
v0.10.0 #
-
changed: Add support for Ecto
v3.10 -
changed: Bring SQLite closer to the Postgres adapter implementation
-
changed: Enable
AUTOINCREMENTforserialandbigserial. -
changed: breaking Add support for sqlite strict mode.
With sqlite strict mode support being added, the following field "types" were altered.
TEXT_DATETIME=>TEXTTEXT_UUID=>TEXT: This is when:binary_id_typeis:stringUUID=>BLOB: This is when:binary_id_typeis:binary
This is a breaking change in the sense that rebuilding the schema from scratch will cause those columns to show up differently. Under the hood sqlite does not actually care.
We kept
TEXT_DATETIMEto satisfy the old Ecto2 implementation to keep backwards compatibility. -
changed: breaking Raise when table prefixes are used.
v0.9.1 #
- changed: Use
Connection.connectinstead ofSqlite3.open.
v0.9.0 #
- fixed: Added
dump_cmd/3 - fixed: Added
query_many/4
v0.8.2 #
- fixed:
exists()expression building.
v0.8.1 #
- changed: Allow
FROMhints to be used.
v0.8.0 #
- changed: Set minimum elixir version to
~> 1.11 - added: Allow index hints on joins.
- added: Allow datetime type to be configurable.
v0.7.7 #
- fixed: issue with missing space in
EXPLAIN QUERY PLAN.
v0.7.6 #
- changed: explain query to
EXPLAIN QUERY PLAN.
v0.7.5 #
- fixed: generate
binary_idvalues according to thebinary_id_typeconfig.
v0.7.4 #
- fixed: double encoding of a string when converting to json.
v0.7.3 #
- added: information to the help docs about utilizing
exqlitewith database encryption. - changed: raise more meaningful error when an expression fails to match. Backported from ecto_sql#362.
v0.7.2 #
- added:
:timedecode support.
v0.7.1 #
- fixed: Backport of default drops to
:restrictare now backwards compatible with older versions ofecto_sql. We don't really have support fordrop index ... cascadeas it is not in the grammar of sqlite.
v0.7.0 #
- changed: update dependencies to the latest.
- changed: drop support for OTP 20. It is not supported by
telemetryand won't compile. For now we will just support Elixir 1.8 and OTP 21.
v0.6.1 #
- changed: UUID encoding for both
:binary_idand:uuid/Ecto.UUIDis now configurable - changed:
:uuid/Ecto.UUIDis now encoded as a string by default
v0.6.0 #
- changed:
:utc_datetimehandling has been updated to completely remove theZsupplied and made to conform closer to what is done for Postgrex and MyXQL. #49 - changed: updated error message for OTP24
v0.5.7 #
- changed: prepared statements can now be released manually.
- changed: added ability to specify
:asc_nulls_last,:asc_nulls_first,:desc_nulls_last, and:desc_nulls_first.
v0.5.6 #
- fixed: double quote missing from sql query generation.
v0.5.5 #
- added:
:checkconstraint column option. - fixed: "database is locked" issue by setting
journal_modeatstorage_uptime.
v0.5.4 #
- changed: upgrade
ecto_sqldependency to `3.6.0`` - changed: removed old
Ecto.Adapters.SQLite3.Connection.insert/6was replaced withEcto.Adapters.SQLite3.Connection.insert/7.
v0.5.3 #
- added:
collate:opts support to:stringcolumn type
v0.5.1 #
- changed: updated exqlite to
0.5.0 - changed: updated documentation
- changed: updated git repository url
v0.5.0 #
- initial release.