Skip to content

Commit 826ef42

Browse files
committed
bump to 0.5.2
1 parent 255fdd3 commit 826ef42

File tree

2 files changed

+6
-47
lines changed

2 files changed

+6
-47
lines changed

README.md

Lines changed: 5 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,17 @@
22

33
[![Build Status](https://github.com/elixir-sqlite/ecto_sqlite3/workflows/CI/badge.svg)](https://github.com/elixir-sqlite/ecto_sqlite3/actions)
44

5-
An Ecto SQLite3 Adapter.
5+
An Ecto SQLite3 Adapter. Uses [Exqlite](https://github.com/elixir-sqlite/exqlite) as the driver to communicate with sqlite3.
66

7+
## Caveats and limitations
78

8-
## Caveats
9-
10-
* Prepared statements are not cached.
11-
* Prepared statements are not immutable. You must be careful when manipulating
12-
statements and binding values to statements. Do not try to manipulate the
13-
statements concurrently. Keep it isolated to one process.
14-
* Adding a `CHECK` constraint is not supported by the Ecto adapter. This is due
15-
to how Ecto handles specifying constraints. In SQLite you must specify the
16-
`CHECK` on creation.
17-
* All native calls are run through the Dirty NIF scheduler.
18-
* Datetimes are stored without offsets. This is due to how SQLite3 handles date
19-
and times. If you would like to store a timezone, you will need to create a
20-
second column somewhere storing the timezone name and shifting it when you
21-
get it from the database. This is more reliable than storing the offset as
22-
`+03:00` as it does not respect daylight savings time.
23-
9+
See [Limitations](https://hexdocs.pm/ecto_sqlite3/Ecto.Adapters.SQLite3.html#module-limitations) in Hexdocs.
2410

2511
## Installation
2612

2713
```elixir
2814
defp deps do
29-
{:ecto_sqlite3, "~> 0.5.0"}
15+
{:ecto_sqlite3, "~> 0.5.2"}
3016
end
3117
```
3218

@@ -42,39 +28,12 @@ end
4228

4329
Configure your repository similar to the following. If you want to know more
4430
about the possible options to pass the repository, checkout the documentation
45-
for `SQLite3.Connection.connect/1`. It will have more information on what is
46-
configurable.
31+
for [`Ecto.Adapters.SQLite`](https://hexdocs.pm/ecto_sqlite3/). It will have more information on what is configurable.
4732

4833
```elixir
4934
config :my_app,
5035
ecto_repos: [MyApp.Repo]
5136

5237
config :my_app, MyApp.Repo,
5338
database: "path/to/my/database.db",
54-
show_sensitive_data_on_connection_error: false,
55-
journal_mode: :wal,
56-
cache_size: -64000,
57-
temp_store: :memory,
58-
pool_size: 1
5939
```
60-
61-
62-
### Note
63-
64-
* Pool size is set to `1` but can be increased to `4`. When set to `10` there
65-
was a lot of database busy errors. Currently this is a known issue and is
66-
being looked in to.
67-
68-
* Cache size is a negative number because that is how SQLite3 defines the cache
69-
size in kilobytes. If you make it positive, that is the number of pages in
70-
memory to use. Both have their pros and cons. Check the documentation out for
71-
[SQLite3][pragma].
72-
73-
* Uses [Exqlite][exqlite] as the driver to communicate with sqlite3.
74-
75-
## Contributing
76-
77-
Feel free to check the project out and submit pull requests.
78-
79-
[pragma]: <https://www.sqlite.org/pragma.html>
80-
[exqlite]: <https://github.com/warmwaffles/exqlite>

mix.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ defmodule EctoSQLite3.MixProject do
44
def project do
55
[
66
app: :ecto_sqlite3,
7-
version: "0.5.1",
7+
version: "0.5.2",
88
elixir: "~> 1.8",
99
start_permanent: Mix.env() == :prod,
1010
source_url: "https://github.com/elixir-sqlite/ecto_sqlite3",

0 commit comments

Comments
 (0)