sqlite3 1.5.0.rc1-x64-mingw-ucrt
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gemtest +0 -0
- data/API_CHANGES.md +49 -0
- data/CHANGELOG.md +419 -0
- data/CONTRIBUTING.md +24 -0
- data/ChangeLog.cvs +88 -0
- data/Gemfile +3 -0
- data/LICENSE +27 -0
- data/LICENSE-DEPENDENCIES +20 -0
- data/README.md +233 -0
- data/ext/sqlite3/aggregator.c +273 -0
- data/ext/sqlite3/aggregator.h +12 -0
- data/ext/sqlite3/backup.c +168 -0
- data/ext/sqlite3/backup.h +15 -0
- data/ext/sqlite3/database.c +853 -0
- data/ext/sqlite3/database.h +17 -0
- data/ext/sqlite3/exception.c +98 -0
- data/ext/sqlite3/exception.h +8 -0
- data/ext/sqlite3/extconf.rb +159 -0
- data/ext/sqlite3/sqlite3.c +163 -0
- data/ext/sqlite3/sqlite3_ruby.h +45 -0
- data/ext/sqlite3/statement.c +442 -0
- data/ext/sqlite3/statement.h +16 -0
- data/faq/faq.md +431 -0
- data/faq/faq.rb +145 -0
- data/faq/faq.yml +426 -0
- data/lib/sqlite3/3.1/sqlite3_native.so +0 -0
- data/lib/sqlite3/constants.rb +50 -0
- data/lib/sqlite3/database.rb +741 -0
- data/lib/sqlite3/errors.rb +35 -0
- data/lib/sqlite3/pragmas.rb +595 -0
- data/lib/sqlite3/resultset.rb +187 -0
- data/lib/sqlite3/statement.rb +145 -0
- data/lib/sqlite3/translator.rb +118 -0
- data/lib/sqlite3/value.rb +57 -0
- data/lib/sqlite3/version.rb +25 -0
- data/lib/sqlite3.rb +15 -0
- data/test/helper.rb +27 -0
- data/test/test_backup.rb +33 -0
- data/test/test_collation.rb +82 -0
- data/test/test_database.rb +538 -0
- data/test/test_database_flags.rb +95 -0
- data/test/test_database_readonly.rb +36 -0
- data/test/test_database_readwrite.rb +41 -0
- data/test/test_deprecated.rb +44 -0
- data/test/test_encoding.rb +155 -0
- data/test/test_integration.rb +507 -0
- data/test/test_integration_aggregate.rb +336 -0
- data/test/test_integration_open_close.rb +30 -0
- data/test/test_integration_pending.rb +115 -0
- data/test/test_integration_resultset.rb +142 -0
- data/test/test_integration_statement.rb +194 -0
- data/test/test_result_set.rb +37 -0
- data/test/test_sqlite3.rb +25 -0
- data/test/test_statement.rb +263 -0
- data/test/test_statement_execute.rb +35 -0
- metadata +187 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 4b79cb61e06f759d59a193ee7a0f5b4c5075160b316e96fd19473b710df49de4
|
4
|
+
data.tar.gz: f781703033a062c89dd849505acf54c55ce2ba8b1b6d56bed3750b061323df90
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 4f678c6e1244e2eb98923a3a94a49d8e1f254d6f0bcad5f50fce45452f4a74f4061555b89ab3f7521c751024617677d77e0680a8842d5ca5df4bac634e8c0fac
|
7
|
+
data.tar.gz: 4966812b3855190ad035fa7d212b5023d913154c6fe4afbff34094210fb1afffb7d4022194f245923e3ffcd52bab975e1bd7c390a8b03a337713f62f9550f711
|
data/.gemtest
ADDED
File without changes
|
data/API_CHANGES.md
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# API Changes
|
2
|
+
|
3
|
+
* SQLite3::Database#execute only accepts an array for bind parameters.
|
4
|
+
|
5
|
+
* SQLite3::ResultSet used to query the database for the first row, regardless
|
6
|
+
of whether the user asked for it or not. I have removed that so that rows
|
7
|
+
will not be returned until the user asks for them. This is a subtle but
|
8
|
+
sometimes important change in behavior.
|
9
|
+
|
10
|
+
83882d2208ed189361617d5ab8532a325aaf729d
|
11
|
+
|
12
|
+
* SQLite3::Database#trace now takes either a block or an object that responds
|
13
|
+
to "call". The previous implementation passed around a VALUE that was cast
|
14
|
+
to a void *. This is dangerous because the value could get garbage collected
|
15
|
+
before the proc was called. If the user wants data passed around with the
|
16
|
+
block, they should use variables available to the closure or create an
|
17
|
+
object.
|
18
|
+
|
19
|
+
* SQLite3::Statement#step automatically converts to ruby types, where before
|
20
|
+
all values were automatically yielded as strings. This will only be a
|
21
|
+
problem for people who were accessing information about the database that
|
22
|
+
wasn't previously passed through the pure ruby conversion code.
|
23
|
+
|
24
|
+
* SQLite3::Database#errmsg no longer takes a parameter to return error
|
25
|
+
messages as UTF-16. Do people even use that? I opt for staying UTF-8 when
|
26
|
+
possible. See test_integration.rb test_errmsg_utf16
|
27
|
+
|
28
|
+
* SQLite3::Database#authorize same changes as trace
|
29
|
+
|
30
|
+
* test/test_tc_database.rb was removed because we no longer use the Driver
|
31
|
+
design pattern.
|
32
|
+
|
33
|
+
# Garbage Collection Strategy
|
34
|
+
|
35
|
+
All statements keep pointers back to their respective database connections.
|
36
|
+
The @connection instance variable on the Statement handle keeps the database
|
37
|
+
connection alive. Memory allocated for a statement handler will be freed in
|
38
|
+
two cases:
|
39
|
+
|
40
|
+
* close is called on the statement
|
41
|
+
* The SQLite3::Database object gets garbage collected
|
42
|
+
|
43
|
+
We can't free the memory for the statement in the garbage collection function
|
44
|
+
for the statement handler. The reason is because there exists a race
|
45
|
+
condition. We cannot guarantee the order in which objects will be garbage
|
46
|
+
collected. So, it is possible that a connection and a statement are up for
|
47
|
+
garbage collection. If the database connection were to be free'd before the
|
48
|
+
statement, then boom. Instead we'll be conservative and free unclosed
|
49
|
+
statements when the connection is terminated.
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,419 @@
|
|
1
|
+
# sqlite3-ruby Changelog
|
2
|
+
|
3
|
+
## 1.5.0 / unreleased
|
4
|
+
|
5
|
+
### Packaging
|
6
|
+
|
7
|
+
#### Faster, more reliable installation
|
8
|
+
|
9
|
+
Native (precompiled) gems are available for Ruby 2.6, 2.7, 3.0, and 3.1 on all these platforms:
|
10
|
+
|
11
|
+
- `aarch64-linux`
|
12
|
+
- `arm-linux`
|
13
|
+
- `arm64-darwin`
|
14
|
+
- `x64-mingw32` and `x64-mingw-ucrt`
|
15
|
+
- `x86-linux`
|
16
|
+
- `x86_64-darwin`
|
17
|
+
- `x86_64-linux`
|
18
|
+
|
19
|
+
If you are using one of these Ruby versions on one of these platforms, the native gem is the recommended way to install sqlite3-ruby.
|
20
|
+
|
21
|
+
See [the README](https://github.com/sparklemotion/sqlite3-ruby#native-gems-recommended) for more information.
|
22
|
+
|
23
|
+
|
24
|
+
#### More consistent developer experience
|
25
|
+
|
26
|
+
Both the native (precompiled) gems and the vanilla "ruby platform" (source) gem include sqlite v3.39.0 by default.
|
27
|
+
|
28
|
+
Defaulting to a consistent version of sqlite across all systems means that your development environment behaves exactly like your production environment, and you have access to the latest and greatest features of sqlite.
|
29
|
+
|
30
|
+
You can opt-out of the packaged version of sqlite (and use your system-installed library as in versions < 1.5.0). See [the README](https://github.com/sparklemotion/sqlite3-ruby#avoiding-the-precompiled-native-gem) for more information.
|
31
|
+
|
32
|
+
[Release notes for this version of sqlite](https://sqlite.org/releaselog/3_39_0.html)
|
33
|
+
|
34
|
+
|
35
|
+
### Rubies and Platforms
|
36
|
+
|
37
|
+
* TruffleRuby is supported.
|
38
|
+
* Apple Silicon is supported (M1, arm64-darwin).
|
39
|
+
|
40
|
+
|
41
|
+
### Added
|
42
|
+
|
43
|
+
* `SQLite3::SQLITE_LOADED_VERSION` contains the version string of the sqlite3 library that is dynamically loaded (compare to `SQLite3::SQLITE_VERSION` which is the version at compile-time).
|
44
|
+
|
45
|
+
|
46
|
+
## 1.4.4 / 2022-06-14
|
47
|
+
|
48
|
+
### Fixes
|
49
|
+
|
50
|
+
* Compilation no longer fails against SQLite3 versions < 3.29.0. This issue was introduced in v1.4.3. [#324] (Thank you, @r6e!)
|
51
|
+
|
52
|
+
|
53
|
+
## 1.4.3 / 2022-05-25
|
54
|
+
|
55
|
+
### Enhancements
|
56
|
+
|
57
|
+
* Disable non-standard support for double-quoted string literals via the `:strict` option. [#317] (Thank you, @casperisfine!)
|
58
|
+
* Column type names are now explicitly downcased on platforms where they may have been in shoutcaps. [#315] (Thank you, @petergoldstein!)
|
59
|
+
* Support File or Pathname arguments to `Database.new`. [#283] (Thank you, @yb66!)
|
60
|
+
* Support building on MSVC. [#285] (Thank you, @jmarrec!)
|
61
|
+
|
62
|
+
|
63
|
+
## 1.4.2 / 2019-12-18
|
64
|
+
|
65
|
+
* Travis: Drop unused setting "sudo: false"
|
66
|
+
* The taint mechanism will be deprecated in Ruby 2.7
|
67
|
+
* Fix Ruby 2.7 rb_check_safe_obj warnings
|
68
|
+
* Update travis config
|
69
|
+
|
70
|
+
|
71
|
+
## 1.4.1
|
72
|
+
|
73
|
+
* Don't mandate dl functions for the extention build
|
74
|
+
* bumping version
|
75
|
+
|
76
|
+
|
77
|
+
## 1.4.0
|
78
|
+
|
79
|
+
### Enhancements
|
80
|
+
|
81
|
+
* Better aggregator support
|
82
|
+
|
83
|
+
### Bugfixes
|
84
|
+
|
85
|
+
* Various
|
86
|
+
|
87
|
+
|
88
|
+
## 1.3.13
|
89
|
+
|
90
|
+
### Enhancements
|
91
|
+
|
92
|
+
* Support SQLite flags when defining functions
|
93
|
+
* Add definition for SQLITE_DETERMINISTIC flag
|
94
|
+
|
95
|
+
|
96
|
+
## 1.3.12
|
97
|
+
|
98
|
+
### Bugfixes
|
99
|
+
|
100
|
+
* OS X install will default to homebrew if available. Fixes #195
|
101
|
+
|
102
|
+
|
103
|
+
## 1.3.11 / 2015-10-10
|
104
|
+
|
105
|
+
### Enhancements
|
106
|
+
|
107
|
+
* Windows: build against SQLite 3.8.11.1
|
108
|
+
|
109
|
+
### Internal
|
110
|
+
|
111
|
+
* Use rake-compiler-dock to build Windows binaries. Pull #159 [larskanis]
|
112
|
+
* Expand Ruby versions being tested for Travis and AppVeyor
|
113
|
+
|
114
|
+
|
115
|
+
## 1.3.10 / 2014-10-30
|
116
|
+
|
117
|
+
### Enhancements
|
118
|
+
|
119
|
+
* Windows: build against SQLite 3.8.6. Closes #135 [Hubro]
|
120
|
+
|
121
|
+
|
122
|
+
## 1.3.9 / 2014-02-25
|
123
|
+
|
124
|
+
### Bugfixes
|
125
|
+
|
126
|
+
* Reset exception message. Closes #80
|
127
|
+
* Reduce warnings due unused pointers. Closes #89
|
128
|
+
* Add BSD-3 license reference to gemspec. Refs #99 and #106
|
129
|
+
|
130
|
+
|
131
|
+
## 1.3.8 / 2013-08-17
|
132
|
+
|
133
|
+
### Enhancements
|
134
|
+
|
135
|
+
* Windows: build against SQLite 3.7.17
|
136
|
+
|
137
|
+
### Bugfixes
|
138
|
+
|
139
|
+
* Reset exception message. Closes #80
|
140
|
+
* Correctly convert BLOB values to Ruby. Closes #65
|
141
|
+
* Add MIT license reference to gemspec. Closes #99
|
142
|
+
* Remove unused pointer. Closes #89
|
143
|
+
|
144
|
+
### Internal
|
145
|
+
|
146
|
+
* Backport improvements in cross compilation for Windows
|
147
|
+
* Use of Minitest for internal tests
|
148
|
+
* Use Gemfile (generated by Hoe) to deal with dependencies
|
149
|
+
* Cleanup Travis CI
|
150
|
+
|
151
|
+
|
152
|
+
## 1.3.7 / 2013-01-11
|
153
|
+
|
154
|
+
### Bugfixes
|
155
|
+
|
156
|
+
* Closing a bad statement twice will not segv.
|
157
|
+
* Aggregate handlers are initialized on each query. Closes #44
|
158
|
+
|
159
|
+
### Internal
|
160
|
+
|
161
|
+
* Unset environment variables that could affect cross compilation.
|
162
|
+
|
163
|
+
|
164
|
+
## 1.3.6 / 2012-04-16
|
165
|
+
|
166
|
+
### Enhancements
|
167
|
+
|
168
|
+
* Windows: build against SQLite 3.7.11
|
169
|
+
* Added SQLite3::ResultSet#each_hash for fetching each row as a hash.
|
170
|
+
* Added SQLite3::ResultSet#next_hash for fetching one row as a hash.
|
171
|
+
|
172
|
+
### Bugfixes
|
173
|
+
|
174
|
+
* Support both UTF-16LE and UTF-16BE encoding modes on PPC. Closes #63
|
175
|
+
* Protect parameters to custom functions from being garbage collected too
|
176
|
+
soon. Fixes #60. Thanks hirataya!
|
177
|
+
* Fix backwards compatibility with 1.2.5 with bind vars and `query` method.
|
178
|
+
Fixes #35.
|
179
|
+
* Fix double definition error caused by defining sqlite3_int64/uint64.
|
180
|
+
* Fix suspicious version regexp.
|
181
|
+
|
182
|
+
### Deprecations
|
183
|
+
|
184
|
+
* ArrayWithTypesAndFields#types is deprecated and the class will be removed
|
185
|
+
in version 2.0.0. Please use the `types` method on the ResultSet class
|
186
|
+
that created this object.
|
187
|
+
* ArrayWithTypesAndFields#fields is deprecated and the class will be removed
|
188
|
+
in version 2.0.0. Please use the `columns` method on the ResultSet class
|
189
|
+
that created this object.
|
190
|
+
* The ArrayWithTypesAndFields class will be removed in 2.0.0
|
191
|
+
* The ArrayWithTypes class will be removed in 2.0.0
|
192
|
+
* HashWithTypesAndFields#types is deprecated and the class will be removed
|
193
|
+
in version 2.0.0. Please use the `types` method on the ResultSet class
|
194
|
+
that created this object.
|
195
|
+
* HashWithTypesAndFields#fields is deprecated and the class will be removed
|
196
|
+
in version 2.0.0. Please use the `columns` method on the ResultSet class
|
197
|
+
that created this object.
|
198
|
+
|
199
|
+
|
200
|
+
## 1.3.5 / 2011-12-03 - ZOMG Holidays are here Edition!
|
201
|
+
|
202
|
+
### Enhancements
|
203
|
+
|
204
|
+
* Windows: build against SQLite 3.7.9
|
205
|
+
* Static: enable SQLITE_ENABLE_COLUMN_METADATA
|
206
|
+
* Added Statement#clear_bindings! to set bindings back to nil
|
207
|
+
|
208
|
+
### Bugfixes
|
209
|
+
|
210
|
+
* Fixed a segv on Database.new. Fixes #34 (thanks nobu!)
|
211
|
+
* Database error is not reset, so don't check it in Statement#reset!
|
212
|
+
* Remove conditional around Bignum statement bindings.
|
213
|
+
Fixes #52. Fixes #56. Thank you Evgeny Myasishchev.
|
214
|
+
|
215
|
+
### Internal
|
216
|
+
|
217
|
+
* Use proper endianness when testing database connection with UTF-16.
|
218
|
+
Fixes #40. Fixes #51
|
219
|
+
* Use -fPIC for static compilation when host is x86_64.
|
220
|
+
|
221
|
+
|
222
|
+
## 1.3.4 / 2011-07-25
|
223
|
+
|
224
|
+
### Enhancements
|
225
|
+
|
226
|
+
* Windows: build against SQLite 3.7.7.1
|
227
|
+
* Windows: build static binaries that do not depend on sqlite3.dll be
|
228
|
+
installed anymore
|
229
|
+
|
230
|
+
### Bugfixes
|
231
|
+
|
232
|
+
* Backup API is conditionally required so that older libsqlite3 can be used.
|
233
|
+
Thanks Hongli Lai.
|
234
|
+
* Fixed segmentation fault when nil is passed to SQLite3::Statement.new
|
235
|
+
* Fix extconf's hardcoded path that affected installation on certain systems.
|
236
|
+
|
237
|
+
|
238
|
+
## 1.3.3 / 2010-01-16
|
239
|
+
|
240
|
+
### Bugfixes
|
241
|
+
|
242
|
+
* Abort on installation if sqlite3_backup_init is missing. Fixes #19
|
243
|
+
* Gem has been renamed to 'sqlite3'. Please use `gem install sqlite3`
|
244
|
+
|
245
|
+
|
246
|
+
## 1.3.2 / 2010-10-30 / RubyConf Uruguay Edition!
|
247
|
+
|
248
|
+
### Enhancements
|
249
|
+
|
250
|
+
* Windows: build against 3.7.3 version of SQLite3
|
251
|
+
* SQLite3::Database can now be open as readonly
|
252
|
+
|
253
|
+
db = SQLite3::Database.new('my.db', :readonly => true)
|
254
|
+
|
255
|
+
* Added SQLite3::SQLITE_VERSION and SQLite3::SQLITE_VERSION_NUMBER [nurse]
|
256
|
+
|
257
|
+
### Bugfixes
|
258
|
+
|
259
|
+
* type_translation= works along with Database#execute and a block
|
260
|
+
* defined functions are kept in a hash to prevent GC. #7
|
261
|
+
* Removed GCC specific flags from extconf.
|
262
|
+
|
263
|
+
### Deprecations
|
264
|
+
|
265
|
+
* SQLite3::Database#type_translation= will be deprecated in the future with
|
266
|
+
no replacement.
|
267
|
+
* SQlite3::Version will be deprecated in 2.0.0 with SQLite3::VERSION as the
|
268
|
+
replacement.
|
269
|
+
|
270
|
+
|
271
|
+
## 1.3.1 / 2010-07-09
|
272
|
+
|
273
|
+
### Enhancements
|
274
|
+
|
275
|
+
* Custom collations may be defined using SQLite3::Database#collation
|
276
|
+
|
277
|
+
### Bugfixes
|
278
|
+
|
279
|
+
* Statements returning 0 columns are automatically stepped. [RF #28308]
|
280
|
+
* SQLite3::Database#encoding works on 1.8 and 1.9
|
281
|
+
|
282
|
+
|
283
|
+
## 1.3.0 / 2010-06-06
|
284
|
+
|
285
|
+
### Enhancements
|
286
|
+
|
287
|
+
* Complete rewrite of C-based adapter from SWIG to hand-crafted one [tenderlove]
|
288
|
+
See API_CHANGES document for details.
|
289
|
+
This closes: Bug #27300, Bug #27241, Patch #16020
|
290
|
+
* Improved UTF, Unicode, M17N, all that handling and proper BLOB handling [tenderlove, nurse]
|
291
|
+
* Added support for type translations [tenderlove]
|
292
|
+
|
293
|
+
@db.translator.add_translator('sometime') do |type, thing|
|
294
|
+
'output' # this will be returned as value for that column
|
295
|
+
end
|
296
|
+
|
297
|
+
### Experimental
|
298
|
+
|
299
|
+
* Added API to access and load extensions. [kashif]
|
300
|
+
These functions maps directly into SQLite3 own enable_load_extension()
|
301
|
+
and load_extension() C-API functions. See SQLite3::Database API documentation for details.
|
302
|
+
This closes: Patches #9178
|
303
|
+
|
304
|
+
### Bugfixes
|
305
|
+
|
306
|
+
* Corrected gem dependencies (runtime and development)
|
307
|
+
* Fixed threaded tests [Alexey Borzenkov]
|
308
|
+
* Removed GitHub gemspec
|
309
|
+
* Fixed "No definition for" warnings from RDoc
|
310
|
+
* Generate zip and tgz files for releases
|
311
|
+
* Added Luis Lavena as gem Author (maintainer)
|
312
|
+
* Prevent mkmf interfere with Mighty Snow Leopard
|
313
|
+
* Allow extension compilation search for common lib paths [kashif]
|
314
|
+
(lookup /usr/local, /opt/local and /usr)
|
315
|
+
* Corrected extension compilation under MSVC [romuloceccon]
|
316
|
+
* Define load_extension functionality based on availability [tenderlove]
|
317
|
+
* Deprecation notices for Database#query. Fixes RF #28192
|
318
|
+
|
319
|
+
|
320
|
+
## 1.3.0.beta.2 / 2010-05-15
|
321
|
+
|
322
|
+
### Enhancements
|
323
|
+
|
324
|
+
* Added support for type translations [tenderlove]
|
325
|
+
|
326
|
+
@db.translator.add_translator('sometime') do |type, thing|
|
327
|
+
'output' # this will be returned as value for that column
|
328
|
+
end
|
329
|
+
|
330
|
+
### Bugfixes
|
331
|
+
|
332
|
+
* Allow extension compilation search for common lib paths [kashif]
|
333
|
+
(lookup /usr/local, /opt/local and /usr)
|
334
|
+
* Corrected extension compilation under MSVC [romuloceccon]
|
335
|
+
* Define load_extension functionality based on availability [tenderlove]
|
336
|
+
* Deprecation notices for Database#query. Fixes RF #28192
|
337
|
+
|
338
|
+
|
339
|
+
## 1.3.0.beta.1 / 2010-05-10
|
340
|
+
|
341
|
+
### Enhancements
|
342
|
+
|
343
|
+
* Complete rewrite of C-based adapter from SWIG to hand-crafted one [tenderlove]
|
344
|
+
See API_CHANGES document for details.
|
345
|
+
This closes: Bug #27300, Bug #27241, Patch #16020
|
346
|
+
* Improved UTF, Unicode, M17N, all that handling and proper BLOB handling [tenderlove, nurse]
|
347
|
+
|
348
|
+
### Experimental
|
349
|
+
|
350
|
+
* Added API to access and load extensions. [kashif]
|
351
|
+
These functions maps directly into SQLite3 own enable_load_extension()
|
352
|
+
and load_extension() C-API functions. See SQLite3::Database API documentation for details.
|
353
|
+
This closes: Patches #9178
|
354
|
+
|
355
|
+
### Bugfixes
|
356
|
+
|
357
|
+
* Corrected gem dependencies (runtime and development)
|
358
|
+
* Fixed threaded tests [Alexey Borzenkov]
|
359
|
+
* Removed GitHub gemspec
|
360
|
+
* Fixed "No definition for" warnings from RDoc
|
361
|
+
* Generate zip and tgz files for releases
|
362
|
+
* Added Luis Lavena as gem Author (maintainer)
|
363
|
+
* Prevent mkmf interfere with Mighty Snow Leopard
|
364
|
+
|
365
|
+
|
366
|
+
## 1.2.5 / 2009-07-25
|
367
|
+
|
368
|
+
* Check for illegal nil before executing SQL [Erik Veenstra]
|
369
|
+
* Switch to Hoe for gem task management and packaging.
|
370
|
+
* Advertise rake-compiler as development dependency.
|
371
|
+
* Build gem binaries for Windows.
|
372
|
+
* Improved Ruby 1.9 support compatibility.
|
373
|
+
* Taint returned values. Patch #20325.
|
374
|
+
* Database.open and Database.new now take an optional block [Gerrit Kaiser]
|
375
|
+
|
376
|
+
|
377
|
+
## 1.2.4.1 (internal) / 2009-07-05
|
378
|
+
|
379
|
+
* Check for illegal nil before executing SQL [Erik Veenstra]
|
380
|
+
* Switch to Hoe for gem task management and packaging.
|
381
|
+
* Advertise rake-compiler as development dependency.
|
382
|
+
* Build gem binaries for Windows.
|
383
|
+
* Improved Ruby 1.9 support compatibility.
|
384
|
+
|
385
|
+
|
386
|
+
## 1.2.4 / 2008-08-27
|
387
|
+
|
388
|
+
* Package the updated C file for source builds. [Jamis Buck]
|
389
|
+
|
390
|
+
|
391
|
+
## 1.2.3 / 2008-08-26
|
392
|
+
|
393
|
+
* Fix incorrect permissions on database.rb and translator.rb [Various]
|
394
|
+
* Avoid using Object#extend for greater speedups [Erik Veenstra]
|
395
|
+
* Ruby 1.9 compatibility tweaks for Array#zip [jimmy88@gmail.com]
|
396
|
+
* Fix linking against Ruby 1.8.5 [Rob Holland <rob@inversepath.com>]
|
397
|
+
|
398
|
+
|
399
|
+
## 1.2.2 / 2008-05-31
|
400
|
+
|
401
|
+
* Make the table_info method adjust the returned default value for the rows
|
402
|
+
so that the sqlite3 change in 3.3.8 and greater can be handled
|
403
|
+
transparently [Jamis Buck <jamis@37signals.com>]
|
404
|
+
* Ruby 1.9 compatibility tweaks [Roman Le Negrate <roman2k@free.fr>]
|
405
|
+
* Various performance enhancements [thanks Erik Veenstra]
|
406
|
+
* Correct busy_handler documentation [Rob Holland <rob@inversepath.com>]
|
407
|
+
* Use int_bind64 on Fixnum values larger than a 32bit C int can take. [Rob Holland <rob@inversepath.com>]
|
408
|
+
* Work around a quirk in SQLite's error reporting by calling sqlite3_reset
|
409
|
+
to produce a more informative error code upon a failure from
|
410
|
+
sqlite3_step. [Rob Holland <rob@inversepath.com>]
|
411
|
+
* Various documentation, test, and style tweaks [Rob Holland <rob@inversepath.com>]
|
412
|
+
* Be more granular with time/data translation [Rob Holland <rob@inversepath.com>]
|
413
|
+
* Use Date directly for parsing rather than going via Time [Rob Holland <rob@inversepath.com>]
|
414
|
+
* Check for the rt library and fdatasync so we link against that when
|
415
|
+
needed [Rob Holland <rob@inversepath.com>]
|
416
|
+
* Rename data structures to avoid collision on win32. based on patch
|
417
|
+
by: Luis Lavena [Rob Holland <rob@inversepath.com>]
|
418
|
+
* Add test for defaults [Daniel Rodríguez Troitiño]
|
419
|
+
* Correctly unquote double-quoted pragma defaults [Łukasz Dargiewicz <lukasz.dargiewicz@gmail.com>]
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# Contributing to sqlite3-ruby
|
2
|
+
|
3
|
+
**This document is a work-in-progress.**
|
4
|
+
|
5
|
+
This doc is a short introduction on how to modify and maintain the sqlite3-ruby gem.
|
6
|
+
|
7
|
+
|
8
|
+
## Building gems
|
9
|
+
|
10
|
+
As a prerequisite please make sure you have `docker` correctly installed, so that you're able to cross-compile the native gems.
|
11
|
+
|
12
|
+
Run `bin/build-gems` which will package gems for all supported platforms, and run some basic sanity tests on those packages using `bin/test-gem-set` and `bin/test-gem-file-contents`.
|
13
|
+
|
14
|
+
|
15
|
+
## Making a release
|
16
|
+
|
17
|
+
A quick checklist:
|
18
|
+
|
19
|
+
- [ ] make sure CI is green!
|
20
|
+
- [ ] update `CHANGELOG.md` and `lib/sqlite3/version.rb` including `VersionProxy::{MINOR,TINY}`
|
21
|
+
- [ ] create a git tag using a format that matches the pattern `v\d+\.\d+\.\d+`, e.g. `v1.3.13`
|
22
|
+
- [ ] run `bin/build-gems` and make sure it completes and all the tests pass
|
23
|
+
- [ ] `for g in gems/*.gem ; do gem push $g ; done`
|
24
|
+
- [ ] create a release at https://github.com/sparklemotion/sqlite3-ruby/releases and include sha2 checksums
|
data/ChangeLog.cvs
ADDED
@@ -0,0 +1,88 @@
|
|
1
|
+
2005-01-05 09:40 minam
|
2
|
+
|
3
|
+
* Rakefile, sqlite3-ruby-win32.gemspec, sqlite3-ruby.gemspec: Added
|
4
|
+
win32 gem.
|
5
|
+
|
6
|
+
2005-01-05 07:31 minam
|
7
|
+
|
8
|
+
* Rakefile, test/tc_integration.rb, test/tests.rb: Added
|
9
|
+
native-vs-dl benchmark to Rakefile. Added SQLITE3_DRIVERS
|
10
|
+
environment variable to integration test to specify which
|
11
|
+
driver(s) should be tested (defaults to "Native").
|
12
|
+
|
13
|
+
2005-01-04 14:26 minam
|
14
|
+
|
15
|
+
* ext/sqlite3_api/sqlite3_api.i, lib/sqlite3/database.rb,
|
16
|
+
lib/sqlite3/driver/native/driver.rb, test/tc_database.rb,
|
17
|
+
test/tc_integration.rb, test/tests.rb: Unit tests: done. Bugs:
|
18
|
+
fixed.
|
19
|
+
|
20
|
+
2005-01-03 23:13 minam
|
21
|
+
|
22
|
+
* ext/sqlite3_api/sqlite3_api.i, lib/sqlite3/database.rb,
|
23
|
+
lib/sqlite3/driver/dl/driver.rb,
|
24
|
+
lib/sqlite3/driver/native/driver.rb, test/tc_integration.rb:
|
25
|
+
Custom functions (aggregate and otherwise) are supported by the
|
26
|
+
native driver now. Test cases for the same.
|
27
|
+
|
28
|
+
2005-01-03 13:51 minam
|
29
|
+
|
30
|
+
* ext/sqlite3_api/MANIFEST, ext/sqlite3_api/extconf.rb,
|
31
|
+
ext/sqlite3_api/post-clean.rb, ext/sqlite3_api/post-distclean.rb,
|
32
|
+
ext/sqlite3_api/sqlite3_api.i, lib/sqlite3/database.rb,
|
33
|
+
lib/sqlite3/resultset.rb, lib/sqlite3/version.rb,
|
34
|
+
lib/sqlite3/driver/dl/driver.rb,
|
35
|
+
lib/sqlite3/driver/native/driver.rb, test/native-vs-dl.rb,
|
36
|
+
test/tc_integration.rb: Added preliminary implementation of
|
37
|
+
native driver (swig-based), and integration tests.
|
38
|
+
|
39
|
+
2004-12-29 19:37 minam
|
40
|
+
|
41
|
+
* lib/sqlite3/driver/dl/driver.rb: Some fixes to allow the DL
|
42
|
+
driver to work with Ruby 1.8.1.
|
43
|
+
|
44
|
+
2004-12-29 14:52 minam
|
45
|
+
|
46
|
+
* lib/sqlite3/: database.rb, version.rb: Made #quote a class method
|
47
|
+
(again). Bumped version to 0.6.
|
48
|
+
|
49
|
+
2004-12-25 22:59 minam
|
50
|
+
|
51
|
+
* lib/sqlite3/driver/dl/api.rb: Added check for darwin in supported
|
52
|
+
platforms (thanks to bitsweat).
|
53
|
+
|
54
|
+
2004-12-22 12:38 minam
|
55
|
+
|
56
|
+
* Rakefile: Rakefile wasn't packaging the README file.
|
57
|
+
|
58
|
+
2004-12-21 22:28 minam
|
59
|
+
|
60
|
+
* Rakefile, sqlite3-ruby.gemspec, test/bm.rb: Packaging now works.
|
61
|
+
Added benchmarks.
|
62
|
+
|
63
|
+
2004-12-21 21:45 minam
|
64
|
+
|
65
|
+
* LICENSE, README, Rakefile, setup.rb, sqlite3-ruby.gemspec,
|
66
|
+
doc/faq/faq.rb, doc/faq/faq.yml, lib/sqlite3.rb,
|
67
|
+
lib/sqlite3/statement.rb, lib/sqlite3/constants.rb,
|
68
|
+
lib/sqlite3/database.rb, lib/sqlite3/resultset.rb,
|
69
|
+
lib/sqlite3/translator.rb, lib/sqlite3/value.rb,
|
70
|
+
lib/sqlite3/version.rb, lib/sqlite3/errors.rb,
|
71
|
+
lib/sqlite3/pragmas.rb, lib/sqlite3/driver/dl/api.rb,
|
72
|
+
lib/sqlite3/driver/dl/driver.rb, test/mocks.rb,
|
73
|
+
test/tc_database.rb, test/tests.rb, test/driver/dl/tc_driver.rb:
|
74
|
+
Initial import
|
75
|
+
|
76
|
+
2004-12-21 21:45 minam
|
77
|
+
|
78
|
+
* LICENSE, README, Rakefile, setup.rb, sqlite3-ruby.gemspec,
|
79
|
+
doc/faq/faq.rb, doc/faq/faq.yml, lib/sqlite3.rb,
|
80
|
+
lib/sqlite3/statement.rb, lib/sqlite3/constants.rb,
|
81
|
+
lib/sqlite3/database.rb, lib/sqlite3/resultset.rb,
|
82
|
+
lib/sqlite3/translator.rb, lib/sqlite3/value.rb,
|
83
|
+
lib/sqlite3/version.rb, lib/sqlite3/errors.rb,
|
84
|
+
lib/sqlite3/pragmas.rb, lib/sqlite3/driver/dl/api.rb,
|
85
|
+
lib/sqlite3/driver/dl/driver.rb, test/mocks.rb,
|
86
|
+
test/tc_database.rb, test/tests.rb, test/driver/dl/tc_driver.rb:
|
87
|
+
Initial revision
|
88
|
+
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
Copyright (c) 2004, Jamis Buck (jamis@jamisbuck.org)
|
2
|
+
All rights reserved.
|
3
|
+
|
4
|
+
Redistribution and use in source and binary forms, with or without
|
5
|
+
modification, are permitted provided that the following conditions are met:
|
6
|
+
|
7
|
+
* Redistributions of source code must retain the above copyright notice,
|
8
|
+
this list of conditions and the following disclaimer.
|
9
|
+
|
10
|
+
* Redistributions in binary form must reproduce the above copyright
|
11
|
+
notice, this list of conditions and the following disclaimer in the
|
12
|
+
documentation and/or other materials provided with the distribution.
|
13
|
+
|
14
|
+
* The names of its contributors may not be used to endorse or promote
|
15
|
+
products derived from this software without specific prior written
|
16
|
+
permission.
|
17
|
+
|
18
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
19
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
20
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
21
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
|
22
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
23
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
24
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
25
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
26
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
27
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# Vendored Dependency Licenses
|
2
|
+
|
3
|
+
The library `sqlite3-ruby` (which lives at https://github.com/sparklemotion/sqlite3-ruby) may include the source code for `sqlite` (which lives at https://www.sqlite.org/)
|
4
|
+
|
5
|
+
`sqlite` source code is licensed under the public domain:
|
6
|
+
|
7
|
+
> https://www.sqlite.org/copyright.html
|
8
|
+
|
9
|
+
The license terms shipped with `sqlite` are included here for your convenience:
|
10
|
+
|
11
|
+
```
|
12
|
+
The author disclaims copyright to this source code. In place of
|
13
|
+
a legal notice, here is a blessing:
|
14
|
+
|
15
|
+
May you do good and not evil.
|
16
|
+
May you find forgiveness for yourself and forgive others.
|
17
|
+
May you share freely, never taking more than you give.
|
18
|
+
```
|
19
|
+
|
20
|
+
Note that these license terms do not apply to the `sqlite3-ruby` library itself.
|