2016-01-08 00:14:05 +08:00
|
|
|
# Version UPCOMING (...)
|
|
|
|
|
2016-05-18 09:22:34 +08:00
|
|
|
* BREAKING CHANGE: Creating transactions from a `Connection` or savepoints from a `Transaction`
|
|
|
|
now take `&mut self` instead of `&self` to correctly represent that transactions within a
|
|
|
|
connection are inherently nested. While a transaction is alive, the parent connection or
|
|
|
|
transaction is unusable, so `Transaction` now implements `Deref<Target=Connection>`, giving
|
|
|
|
access to `Connection`'s methods via the `Transaction` itself.
|
2016-05-17 00:19:38 +08:00
|
|
|
* Adds `insert` convenience method to `Statement` which returns the row ID of an inserted row.
|
|
|
|
* Adds `exists` convenience method returning whether a query finds one or more rows.
|
2016-05-16 11:52:09 +08:00
|
|
|
* Adds support for serializing types from the `serde_json` crate. Requires the `serde_json` feature.
|
2016-05-16 11:39:18 +08:00
|
|
|
* Adds support for serializing types from the `chrono` crate. Requires the `chrono` feature.
|
2016-03-30 04:37:22 +08:00
|
|
|
* Removes `load_extension` feature from `libsqlite3-sys`. `load_extension` is still available
|
|
|
|
on rusqlite itself.
|
2016-03-30 04:15:41 +08:00
|
|
|
* Fixes crash on nightly Rust when using the `trace` feature.
|
2016-03-30 04:14:02 +08:00
|
|
|
* Adds optional `clippy` feature and addresses issues it found.
|
2016-01-08 00:14:05 +08:00
|
|
|
* Adds `column_count()` method to `Statement` and `Row`.
|
|
|
|
* Adds `types::Value` for dynamic column types.
|
2016-01-08 01:40:23 +08:00
|
|
|
* Adds support for user-defined aggregate functions (behind the existing `functions` Cargo feature).
|
2016-01-08 00:14:05 +08:00
|
|
|
* Introduces a `RowIndex` trait allowing columns to be fetched via index (as before) or name (new).
|
2016-02-02 03:18:12 +08:00
|
|
|
* Introduces `ZeroBlob` type under the `blob` module/feature exposing SQLite's zeroblob API.
|
|
|
|
* Adds CI testing for Windows via AppVeyor.
|
|
|
|
* Fixes a warning building libsqlite3-sys under Rust 1.6.
|
2016-02-02 04:23:05 +08:00
|
|
|
* Adds an unsafe `handle()` method to `Connection`. Please file an issue if you actually use it.
|
2016-01-08 00:14:05 +08:00
|
|
|
|
2015-12-17 13:16:30 +08:00
|
|
|
# Version 0.6.0 (2015-12-17)
|
2015-12-09 13:19:59 +08:00
|
|
|
|
2015-12-17 12:46:39 +08:00
|
|
|
* BREAKING CHANGE: `SqliteError` is now an enum instead of a struct. Previously, we were (ab)using
|
|
|
|
the error code and message to send back both underlying SQLite errors and errors that occurred
|
|
|
|
at the Rust level. Now those have been separated out; SQLite errors are returned as
|
|
|
|
`SqliteFailure` cases (which still include the error code but also include a Rust-friendlier
|
|
|
|
enum as well), and rusqlite-level errors are captured in other cases. Because of this change,
|
|
|
|
`SqliteError` no longer implements `PartialEq`.
|
2015-12-17 12:33:56 +08:00
|
|
|
* BREAKING CHANGE: When opening a new detection, rusqlite now detects if SQLite was compiled or
|
|
|
|
configured for single-threaded use only; if it was, connection attempts will fail. If this
|
|
|
|
affects you, please open an issue.
|
2015-12-13 03:22:50 +08:00
|
|
|
* BREAKING CHANGE: `SqliteTransactionDeferred`, `SqliteTransactionImmediate`, and
|
|
|
|
`SqliteTransactionExclusive` are no longer exported. Instead, use
|
|
|
|
`TransactionBehavior::Deferred`, `TransactionBehavior::Immediate`, and
|
|
|
|
`TransactionBehavior::Exclusive`.
|
2015-12-13 03:06:03 +08:00
|
|
|
* Removed `Sqlite` prefix on many types:
|
|
|
|
* `SqliteConnection` is now `Connection`
|
|
|
|
* `SqliteError` is now `Error`
|
|
|
|
* `SqliteResult` is now `Result`
|
2015-12-13 03:08:04 +08:00
|
|
|
* `SqliteStatement` is now `Statement`
|
2015-12-13 03:09:37 +08:00
|
|
|
* `SqliteRows` is now `Rows`
|
2015-12-13 03:11:24 +08:00
|
|
|
* `SqliteRow` is now `Row`
|
2015-12-13 03:13:29 +08:00
|
|
|
* `SqliteOpenFlags` is now `OpenFlags`
|
2015-12-13 03:17:43 +08:00
|
|
|
* `SqliteTransaction` is now `Transaction`.
|
|
|
|
* `SqliteTransactionBehavior` is now `TransactionBehavior`.
|
2015-12-13 03:20:11 +08:00
|
|
|
* `SqliteLoadExtensionGuard` is now `LoadExtensionGuard`.
|
2015-12-13 03:17:43 +08:00
|
|
|
The old, prefixed names are still exported but are deprecated.
|
2015-12-11 09:51:16 +08:00
|
|
|
* Adds a variety of `..._named` methods for executing queries using named placeholder parameters.
|
2015-12-09 13:19:59 +08:00
|
|
|
* Adds `backup` feature that exposes SQLite's online backup API.
|
2015-12-15 05:24:11 +08:00
|
|
|
* Adds `blob` feature that exposes SQLite's Incremental I/O for BLOB API.
|
2015-12-12 05:28:46 +08:00
|
|
|
* Adds `functions` feature that allows user-defined scalar functions to be added to
|
|
|
|
open `SqliteConnection`s.
|
2015-12-09 13:19:59 +08:00
|
|
|
|
2015-12-09 10:30:19 +08:00
|
|
|
# Version 0.5.0 (2015-12-08)
|
2015-12-01 23:55:01 +08:00
|
|
|
|
2015-12-01 23:37:01 +08:00
|
|
|
* Adds `trace` feature that allows the use of SQLite's logging, tracing, and profiling hooks.
|
2015-12-01 23:55:01 +08:00
|
|
|
* Slight change to the closure types passed to `query_map` and `query_and_then`:
|
|
|
|
* Remove the `'static` requirement on the closure's output type.
|
|
|
|
* Give the closure a `&SqliteRow` instead of a `SqliteRow`.
|
2015-12-02 00:33:48 +08:00
|
|
|
* When building, the environment variable `SQLITE3_LIB_DIR` now takes precedence over pkg-config.
|
|
|
|
* If `pkg-config` is not available, we will try to find `libsqlite3` in `/usr/lib`.
|
2015-12-02 01:05:29 +08:00
|
|
|
* Add more documentation for failure modes of functions that return `SqliteResult`s.
|
2015-12-09 10:30:19 +08:00
|
|
|
* Updates `libc` dependency to 0.2, fixing builds on ARM for Rust 1.6 or newer.
|
2015-12-01 23:55:01 +08:00
|
|
|
|
2015-11-04 00:29:02 +08:00
|
|
|
# Version 0.4.0 (2015-11-03)
|
|
|
|
|
|
|
|
* Adds `Sized` bound to `FromSql` trait as required by RFC 1214.
|
|
|
|
|
2015-09-23 01:18:26 +08:00
|
|
|
# Version 0.3.1 (2015-09-22)
|
|
|
|
|
|
|
|
* Reset underlying SQLite statements as soon as possible after executing, as recommended by
|
|
|
|
http://www.sqlite.org/cvstrac/wiki?p=ScrollingCursor.
|
|
|
|
|
2015-09-21 22:39:13 +08:00
|
|
|
# Version 0.3.0 (2015-09-21)
|
|
|
|
|
|
|
|
* Removes `get_opt`. Use `get_checked` instead.
|
|
|
|
* Add `query_row_and_then` and `query_and_then` convenience functions. These are analogous to
|
|
|
|
`query_row` and `query_map` but allow functions that can fail by returning `Result`s.
|
|
|
|
* Relax uses of `P: AsRef<...>` from `&P` to `P`.
|
|
|
|
* Add additional error check for calling `execute` when `query` was intended.
|
|
|
|
* Improve debug formatting of `SqliteStatement` and `SqliteConnection`.
|
|
|
|
* Changes documentation of `get_checked` to correctly indicate that it returns errors (not panics)
|
|
|
|
when given invalid types or column indices.
|
|
|
|
|
2015-07-27 02:00:51 +08:00
|
|
|
# Version 0.2.0 (2015-07-26)
|
|
|
|
|
|
|
|
* Add `column_names()` to `SqliteStatement`.
|
|
|
|
* By default, include `SQLITE_OPEN_NO_MUTEX` and `SQLITE_OPEN_URI` flags when opening a
|
|
|
|
new conneciton.
|
|
|
|
* Fix generated bindings (e.g., `sqlite3_exec` was wrong).
|
|
|
|
* Use now-generated `sqlite3_destructor_type` to define `SQLITE_STATIC` and `SQLITE_TRANSIENT`.
|
|
|
|
|
2015-05-12 08:22:56 +08:00
|
|
|
# Version 0.1.0 (2015-05-11)
|
|
|
|
|
|
|
|
* [breaking-change] Modify `query_row` to return a `Result` instead of unwrapping.
|
|
|
|
* Deprecate `query_row_safe` (use `query_row` instead).
|
|
|
|
* Add `query_map`.
|
|
|
|
* Add `get_checked`, which asks SQLite to do some basic type-checking of columns.
|
|
|
|
|
2015-04-04 03:50:17 +08:00
|
|
|
# Version 0.0.17 (2015-04-03)
|
|
|
|
|
|
|
|
* Publish version that builds on stable rust (beta). This version lives on the
|
|
|
|
`stable` branch. Development continues on `master` and still requires a nightly
|
|
|
|
version of Rust.
|
|
|
|
|
2015-04-03 21:32:11 +08:00
|
|
|
# Version 0.0.16
|
|
|
|
|
|
|
|
* Updates to track rustc nightly.
|
|
|
|
|
2015-03-30 00:52:05 +08:00
|
|
|
# Version 0.0.15
|
|
|
|
|
|
|
|
* Make SqliteConnection `Send`.
|
|
|
|
|
2015-03-29 11:09:13 +08:00
|
|
|
# Version 0.0.14
|
|
|
|
|
|
|
|
* Remove unneeded features (also involves switching to `libc` crate).
|
|
|
|
|
2015-03-27 03:48:29 +08:00
|
|
|
# Version 0.0.13 (2015-03-26)
|
|
|
|
|
|
|
|
* Updates to track rustc nightly.
|
|
|
|
|
2015-03-25 00:13:19 +08:00
|
|
|
# Version 0.0.12 (2015-03-24)
|
|
|
|
|
|
|
|
* Updates to track rustc stabilization.
|
|
|
|
|
2015-03-13 04:41:37 +08:00
|
|
|
# Version 0.0.11 (2015-03-12)
|
|
|
|
|
|
|
|
* Reexport `sqlite3_stmt` from `libsqlite3-sys` for easier `impl`-ing of `ToSql` and `FromSql`.
|
|
|
|
* Updates to track latest rustc changes.
|
|
|
|
* Update dependency versions.
|
|
|
|
|
2015-02-24 10:50:10 +08:00
|
|
|
# Version 0.0.10 (2015-02-23)
|
|
|
|
|
|
|
|
* BREAKING CHANGE: `open` now expects a `Path` rather than a `str`. There is a separate
|
|
|
|
`open_in_memory` constructor for opening in-memory databases.
|
|
|
|
* Added the ability to load SQLite extensions. This is behind the `load_extension` Cargo feature,
|
|
|
|
because not all builds of sqlite3 include this ability. Notably the default libsqlite3 that
|
|
|
|
ships with OS X 10.10 does not support extensions.
|
|
|
|
|
2015-02-14 04:49:16 +08:00
|
|
|
# Version 0.0.9 (2015-02-13)
|
|
|
|
|
|
|
|
* Updates to track latest rustc changes.
|
|
|
|
* Implement standard `Error` trait for `SqliteError`.
|
|
|
|
|
2015-02-04 23:54:04 +08:00
|
|
|
# Version 0.0.8 (2015-02-04)
|
|
|
|
|
|
|
|
* Updates to track latest rustc changes.
|
|
|
|
|
2015-01-20 23:04:27 +08:00
|
|
|
# Version 0.0.7 (2015-01-20)
|
|
|
|
|
|
|
|
* Use external bitflags from crates.io.
|
|
|
|
|
|
|
|
# Version 0.0.6 (2015-01-10)
|
2015-01-11 11:21:08 +08:00
|
|
|
|
|
|
|
* Updates to track latest rustc changes (1.0.0-alpha).
|
|
|
|
* Add `query_row_safe`, a `SqliteResult`-returning variant of `query_row`.
|
|
|
|
|
2015-01-20 23:04:27 +08:00
|
|
|
# Version 0.0.5 (2015-01-07)
|
2015-01-07 22:18:49 +08:00
|
|
|
|
|
|
|
* Updates to track latest rustc changes (closure syntax).
|
2015-01-08 03:16:51 +08:00
|
|
|
* Updates to track latest rust stdlib changes (`std::c_str` -> `std::ffi`).
|
2015-01-07 22:18:49 +08:00
|
|
|
|
2015-01-20 23:04:27 +08:00
|
|
|
# Version 0.0.4 (2015-01-05)
|
2015-01-06 00:21:47 +08:00
|
|
|
|
|
|
|
* Updates to track latest rustc changes.
|
|
|
|
|
2014-12-24 01:27:09 +08:00
|
|
|
# Version 0.0.3 (2014-12-23)
|
|
|
|
|
|
|
|
* Updates to track latest rustc changes.
|
|
|
|
* Add call to `sqlite3_busy_timeout`.
|
|
|
|
|
2014-12-04 23:48:05 +08:00
|
|
|
# Version 0.0.2 (2014-12-04)
|
|
|
|
|
|
|
|
* Remove use of now-deprecated `std::vec::raw::from_buf`.
|
|
|
|
* Update to latest version of `time` crate.
|
|
|
|
|
|
|
|
# Version 0.0.1 (2014-11-21)
|
|
|
|
|
|
|
|
* Initial release
|