* Release 0.12.0 * Update CHANGELOG.md Co-authored-by: Johannes Müller <straightshoota@gmail.com> --------- Co-authored-by: Johannes Müller <straightshoota@gmail.com>
8.3 KiB
v0.12.0 (2023-06-23)
- (breaking-change) Refactor how drivers create connections. Allow creating
Database
withoutURI
s. (#181, thanks @bcardiff) - Close a transaction when
return
ing from within its block. (#167, thanks @jgaskins) - Fix race conditions in multi-thread mode. (#178, thanks @bcardiff)
- Allow the use of
Enum
s when reading aResultSet
. (#168, thanks @jgaskins) - Fix specs for Crystal 1.4 and 1.5. (#163, #173, thanks @straight-shoota)
- Update README. (#172, #180, thanks @amauryt, @jgaskins)
Note: The breaking-change introduced in this release does not affect consumers of the library, only driver implementors.
v0.11.0 (2022-01-27)
- Fix
Connection#transaction
method to return the block value as the result. (#159, #160, thanks @bcardiff) - Add
DB::ColumnTypeMismatchError
error with column and type information. (#156, thanks @jwoertink, @bcardiff) - Improve
DB::MappingException
error. (#129, thanks @straight-shoota) - Close connection resource when connection is lost. (#155, thanks @stakach, @bcardiff)
- Discard closed connections in the pool when they are returned. (#154, thanks @stakach)
- Fix typo in
Mode.from_rs
argument type. (#142, thanks @dukeraphaelng) - Migrate CI to GitHub Actions. (#147, #152, thanks @oprypin, thanks @straight-shoota)
This release requires Crystal 1.0.0 or later.
Note: For drivers implementations #156 adds a abstract def next_column_index : Int32
to ResultSet
so there is a breaking-change that does not affect consumers of the library.
v0.10.1 (2021-03-22)
- Add docs for
DB::Database#setup_connection
(#139, thanks @jgaskins)
v0.10.0 (2020-09-30)
- Fix mutex deadlock in setup_connection. (#128, thanks @straight-shoota)
- Add logging for executing queries. (#134, thanks @bcardiff)
- Allow
DB::Pool
to be used a generic connection pool. (#131, thanks @jgaskins)
This release requires Crystal 0.35.0 or later.
v0.9.0 (2020-04-06)
- Fix compatibility issues for Crystal 0.34.0. (#124, thanks @bcardiff)
- Fix readme sample. (#117, thanks @bcardiff)
- Raise
DB::NoResultsError
when trying to get data from an empty result (#121, #125, thanks @jwoertink, @bcardiff)
v0.8.0 (2019-12-11)
- Add
DB::Serializable
. (#115, thanks @nickbclifford)
This release requires Crystal 0.25.0 or later.
v0.7.0 (2019-09-20)
- (breaking-change)
#exec
,#query
,#scalar
methods require named argument for array values (#110, thanks @straight-shoota) - Fix pool issues when creating simultaneous connections. (#109, thanks @bcardiff)
- Fix compatibility issues for upcoming Crystal 0.31.0. (#111, thanks @bcardiff)
- Added
DB::Pool#stats
. (#109, thanks @bcardiff)
v0.6.0 (2019-08-02)
- Fix compatibility issues for Crystal 0.30.0. (#108, thanks @bcardiff)
- Fix
BeginTransaction#transaction
rollback due to protocol error. (#101, thanks @straight-shoota) - CI includes Crystal nightly. (#106, thanks @bcardiff)
- Add the Cassandra driver. (#94, thanks @kaukas)
- Several docs improvements. (#99, #96, #107, thanks @nickelghost, @greenbigfrog, @MatthiasWinkelmann)
v0.5.1 (2018-11-07)
- Fix
QueryMethods#query_one?
handling no rows. (#86, thanks @robdavid) - Documentation improvements. (#87, #82, #76, thanks @wontruefree, @Heaven31415, @vtambourine)
v0.5.0 (2017-12-29)
- Fix compatibility issues for crystal 0.24.0. No changes in the api.
v0.4.4 (2017-12-29)
- Allow query results to be read as named tuples directly (see #56, thanks @Nephos)
- Fix sqlite samples in documentation (see #71, thanks @hinrik)
v0.4.3 (2017-11-07)
- Fix connections were not released when building invalid statements. (see #65, thanks @crisward)
- Fix some exceptions were not deriving from
DB::Error
. (see #70, thanks @exts)
v0.4.2 (2017-04-21)
- Fix compatibility issues for crystal 0.22.0
v0.4.1 (2017-04-10)
- Add spec helper for drivers. #48
- Add
#query_each
. #18 - Fix
#read(T.class)
to deal better with unhandled types.
v0.4.0 (2017-03-20)
- Add
DB.connect
to create non pooled connections - Add
Database#checkout
to allow explicit checkout/release connection (see #38) - Fix
Mapping.from_rs
closes the result_set - Fix
Mapping
works with nilable types (see #40, thanks @RX14)
v0.3.3 (2016-12-24)
- Fix compatibility issues for crystal 0.20.3
v0.3.2 (2016-12-16)
- Allow connection pool retry logic in
#scalar
queries.
v0.3.1 (2016-12-15)
- Add ConnectionRefused exception to flag issues when opening new connections.
v0.3.0 (2016-12-14)
-
Add support for non prepared statements. #25
-
Add support for transactions & nested transactions. #27
-
Add
Bool
andTime
toDB::Any
.
v0.2.2 (2016-12-06)
This release requires crystal 0.20.1
-
Changed default connection pool size limit is now 0 (unlimited).
-
Fixed allow new connections right away if pool can be increased.
v0.2.1 (2016-12-06) [YANKED]
v0.2.0 (2016-10-20)
- Fixed release DB connection if an exception occurs during execution of a query (thanks @ggiraldez)
v0.1.1 (2016-09-28) [YANKED]
This release requires crystal 0.19.2
Note: v0.1.1 is yanked since is incompatible with v0.1.0 more.
-
Added connection pool.
DB.open
works with a underlying connection pool. UseDatabase#using_connection
to ensure the same connection is been used across multiple statements. more -
Added mappings. JSON/YAML-like mapping macros (thanks @spalladino) more
-
Changed require ResultSet implementors to just implement
read
, optionally implementingread(T.class)
.
v0.1.0 (2016-06-24)
- Initial release