Brian J. Cardiff
c08fc2befc
Update to crystal-db 0.12.0 (refactor connection factory) ( #91 )
...
* Refactor connection builder
* Update for ConnectionBuilder
* Update to crystal-db ~> 0.12.0
* run crystal tool format
2023-06-23 15:36:08 -03:00
Brian J. Cardiff
79615e6c85
Reset before close ( #90 )
2023-04-24 12:53:56 -03:00
Luis Lavena
84857724c1
Automatically set PRAGMAs using connection query params ( #85 )
...
* Automatically set PRAGMAs using connection query params
Introduce the flexibility to adjust certain PRAGMAs of the SQLite3
connection without having to hardcode those in your codebase (and wait
for compilation).
This allows applications to use `DATABASE_URL` to dynamically fine tune
their SQLite3 configuration.
The change complements `#setup_connection` that offers, via code, the
option to perform queries on setup of each connection.
Only a few PRAGMAs necessary to allow more performant concurrent reads
and reduce write locking.
These pragmas are detected and combined in a single SQL string to reduce
to 1 the number of calls to `sqlite3_exec` C function.
There is no validation of supplied values as SQLite3 automatically
ignores incorrect values for these pragmas.
Closes #84
References:
- https://www.sqlite.org/pragma.html
* Simplify PRAGMA mapping and detection
No longer prefix PRAGMAS with `_`, so the mapping between the real
SQLite3 pragmas and the usage in the URI is more direct.
Use macros instead of case to detect pragmas from URI params and return
those as NamedTuple.
* Update README.md
---------
Co-authored-by: Brian J. Cardiff <bcardiff@gmail.com>
2023-02-18 17:06:09 -03:00
Brian J. Cardiff
d15a8da05c
Release 0.19.0 ( #79 )
2022-01-28 15:33:18 -03:00
Brian J. Cardiff
2849fe15c8
Update to crystal-db ~> 0.11.0 ( #77 )
2022-01-27 11:09:27 -03:00
Ryan Westlund
985bfa2d7c
Fix timestamp reading issue ( #68 )
2021-02-28 14:18:08 -03:00
Brian J. Cardiff
367c11031d
Release 0.18.0 ( #67 )
2021-01-26 16:11:20 -03:00
Ryan Westlund
55b8399d7e
Enable REGEXP by connecting Crystal's stdlib Regex ( #62 )
2020-11-11 15:00:40 -03:00
Brian J. Cardiff
4abea0d326
Release 0.17.0 ( #60 )
2020-09-30 16:01:48 -03:00
Brian J. Cardiff
8586182fd8
Update crystal-db ~> 0.10.0 and Crystal 0.35.0 for logging support ( #58 )
...
* Update crystal-db for logging support
* Update sample
* Update to crystal-db ~> 0.10.0
2020-09-30 11:34:25 -03:00
Brian J. Cardiff
5f6055f4bd
Release 0.16.0 ( #56 )
2020-04-06 21:12:05 -03:00
Brian J. Cardiff
aed9acb225
Release 0.15.0 ( #51 )
2019-12-11 17:59:42 -03:00
Brian J. Cardiff
746c0a5f5e
Release 0.14.0 ( #45 )
2019-09-23 10:31:01 -03:00
Brian J. Cardiff
25a9dd8b0f
Release 0.13.0
2019-08-02 12:35:23 -03:00
Brian J. Cardiff
5303492839
Upgrade to Crystal v0.30.0
2019-07-30 19:17:12 -03:00
Brian J. Cardiff
058c78f837
Annotate return types of abstract methods
2019-07-29 10:25:46 -03:00
Brian J. Cardiff
54089ef97d
Release 0.12.0 ( #41 )
2019-06-07 10:23:14 -03:00
Brian J. Cardiff
4b4441bb37
Code cleanup due to Crystal >= 0.28.0
2019-06-06 12:36:16 -03:00
Brian J. Cardiff
ba1763b3a3
Release 0.11.0 ( #39 )
2019-04-19 02:03:29 -03:00
Brian J. Cardiff
c621a9b701
Upgrade to Crystal 0.28.0 ( #38 )
2019-04-18 15:58:02 -03:00
Tom Richards
a95182be08
Add error codes to LibSQLite3::Code ( #36 )
2018-10-05 11:53:19 -03:00
Brian J. Cardiff
2152441749
Bump version 0.10.0. Release notes.
2018-06-18 10:31:19 +02:00
Brian J. Cardiff
c1f214d695
Upgrade time usage for crystal 0.25.0 ( #34 )
2018-06-18 10:26:32 +02:00
Brian J. Cardiff
13916070e0
Bump version. Release notes.
2017-12-31 00:22:31 -03:00
Brian J. Cardiff
adf64daa08
Bump version. Release notes.
...
Add SQLite3::VERSION constant
2017-11-07 23:49:41 -03:00
Ryan Breen
790d0ded8b
Bytes argument properly bind blob, not text ( #28 )
2017-09-19 16:48:05 -03:00
Tom Richards
e6d5ad33c3
Multi-step exec support ( #27 )
2017-09-14 15:51:25 -03:00
Benoist
616af3ba1d
better closing checks ( #23 )
2017-05-29 15:20:32 -03:00
Brian J. Cardiff
5eb85a98c6
Update to crystal-db ~> 0.4.1
...
Replace driver_spec for db/spec.
Fix read(T?) for T = Int32, Flaot32, Time, Bool..
Fixes #19
2017-04-10 14:09:22 -03:00
Brian J. Cardiff
b43a12fc92
Add spec for DB.connect
...
Update to crystal-db ~> 0.4.0
2017-03-21 15:46:57 -03:00
Hinrik Örn Sigurðsson
bbed6256a6
Make SQLite3::Connection#dump copy all DB pages ( #16 )
...
An issue with bindings caused less than total pages to be copied.
2017-01-17 16:57:27 -03:00
Brian J. Cardiff
bda4b8e184
update to crystal-db ~> 0.3.1
2016-12-15 14:49:39 -03:00
Brian J. Cardiff
9784573152
Add Bool support
...
* change specs to not use #scalar since it does not have expected type information.
* refactor Time spec
2016-12-14 13:52:12 -03:00
Brian J. Cardiff
46709eab00
add spec for transactions and nested transactions ( #12 )
2016-12-14 12:27:43 -03:00
Brian J. Cardiff
242e3dfa02
update to crystal-db feature/unprepared branch
2016-12-03 17:52:24 -03:00
Ary Borenszweig
0396d63771
Updated to Crystal 0.19.0
2016-09-03 18:41:31 -03:00
Brian J. Cardiff
f70c1d89e2
fix: avoid closing statements twice, they are closed in base connection
2016-08-30 16:17:49 -03:00
Brian J. Cardiff
6b72e01c2f
avoid releasing the connection multiple times
...
when the ResultSet is released, the connection is returned. The same happens with the statement.
2016-08-29 16:41:29 -03:00
Ary Borenszweig
c3fce779fe
Added some casts to make it work when other drivers are loaded
2016-07-14 15:21:59 -03:00
Ary Borenszweig
84e1eed991
Fixed type references
2016-07-11 15:24:37 -03:00
Ary Borenszweig
1e8de9a2b4
Implement https://github.com/crystal-lang/crystal-db/pull/9
2016-06-28 14:04:27 -03:00
Brian J. Cardiff
881ef79893
Merge master changes into db branch.
...
Refactor flags, add option to dump from one database connection to another.
Merge commit '135f33d9eac82c63a48b14942c8eff647c070410' into db
# Conflicts:
# spec/database_spec.cr
# src/sqlite3/lib_sqlite3.cr
# src/sqlite3/result_set.cr
# src/sqlite3/statement.cr
2016-06-23 17:27:58 -03:00
Brian J. Cardiff
497379ff81
extend sqlite with time (as text) support.
2016-06-22 16:17:47 -03:00
Brian J. Cardiff
d65575cd77
update Slice(UInt8) to Bytes
2016-06-22 14:13:44 -03:00
Brian J. Cardiff
c8d5acceae
Make sure queries (insert and query) work with any type
2016-06-22 00:45:00 -03:00
Brian J. Cardiff
bf26cdc24f
update DB::ExecResult#rows_affected to Int64
2016-06-21 18:32:06 -03:00
Brian J. Cardiff
3b4b32e4e6
update to crystal-db feature/5-type-extensibility branch
2016-06-21 12:47:12 -03:00
Ary Borenszweig
135f33d9ea
Updated to Crystal 0.18.0
2016-06-15 12:05:12 -03:00
Ary Borenszweig
b1c6c32ae5
Updated to Crystal > 0.15.0
2016-04-12 00:02:16 -03:00
Ary Borenszweig
eb8e4a6962
Simplify flags creation and usage
2016-03-17 10:58:47 -03:00