zachdaniel

zachdaniel

Creator of Ash

Announcing: AshSqlite! (beta)

Hey folks! We’ve just released the beta 0.1.0 version of ash_sqlite. Take a look at the guide here: https://hexdocs.pm/ash_sqlite/get-started-with-sqlite.html

Keep in mind, this is an initial beta release! I’ve tried it out, it’s been smooth for me, but there will almost certainly be some issues that need to be addressed.

Happy hacking!

Big thanks to @warmwaffles for getting some changes in and cutting a release so that we could launch!

Most Liked

zachdaniel

zachdaniel

Creator of Ash

There are various features we could not support. The big ones are aggregates and certain expressions do not have a parallel (or one that we cared to build in the first release) in SQLite3. For example, concat_ws([list, of, things]) is not supported.

Aggregates are a pretty big feature and not being able to use them may or may not affect a given use case. You can always use calculations to extract similar data, but it likely won’t be usable in filters and sorts unless you write it as a fragment that does a subquery.

We will most likely be able to support all aggregate types except for list at some point, but we couldn’t use the implementation from ash_postgres because it uses lateral joins which are not available in SQLite3. Something new will need to be devised for AshSqlite.

Another issue w/ the current implementation is that the migration generator currently is essentially fully copied from AshPostgres but AshPostgres uses alter column and that is not supported by SQLite3, meaning that those migrations need to be adjusted by hand. We should fix the migration generator to have it do something like warn to the user and drop some comments in the migration file, or something like that. Still TBD.

While I’m using AshSqlite3 In https://ash-hq.org I will likely not need any advanced feature support at any point in the near future, so hopefully those that do use it can champion pushing it forward in the above regards.

warmwaffles

warmwaffles

If you encounter and issues, feel free to open tickets.

mayl

mayl

Exciting!

As far as the Ash ecosystem goes, were there any features of Ash Postgres which Ash Sqlite wasn’t able to support? Or are they full one to one replacements for each other?

Where Next?

Popular in News & Updates Top

zachdaniel
Hey folks! I’ve released the first version of our new AI policy. Accepting it is now part of our issue and pull request templates. Feel ...
New
ConnorRigby
This week we added official Nerves support for the OSD32MP1 line of SOMs. Currently we have tested the osd32mp1-brk breakout board, and ...
New
mspanc
Membrane v1.2.6 has been released. What’s Changed Adjust to Elixir 1.19 by @Noarkhh in Update to elixir 1.19 by Noarkhh · Pull Request ...
New
zachdaniel
Had a great time at Jax.Ex! Gave a talk called “Model your Domain, Derive the Rest”. Thanks to the folks at HashRocket for having me!
New
sorenone
Oban v2.23.0 has been released. Sharpens resilience under database outages, catches misconfigured unique constraints at compile time, an...
New
zachdaniel
The second video from the Ash Primers series is out! https://www.youtube.com/watch?v=GtsL_lIis4Q This one is about the migration generato...
New
zachdaniel
Hey everyone! Work is progressing nicely on bulk updates & destroys, which are the primary missing features before I switch to focus ...
New
bartblast
Hey Elixir community! :waving_hand: First, I owe you all an apology. There’s a running joke among my friends that Hologram is like nucle...
New
zachdaniel
AshCloak AshCloak is small but mighty! Simply configure the extension, and it will encrypt your attributes :partying_face: Since an exam...
New
bartblast
This thread is for updates on the Hologram website (docs, new pages, roadmap, feature status, etc.). You can watch this thread to get no...
New

Other popular topics Top

chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 30048 115
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1140 51847 244
New
sergio
In Ruby, I can go: User.find_by(email: "foobar@email.com").update(email: "hello@email.com") How can I do something similar in Elixir? ...
New
gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
AstonJ
You’re a programmer, so you don’t need spoon feeding with the conventional drivel about “this is an integer.” No. You need to know what’s...
New
script
If I have a string “1000 cfu/ml” . I want to remove the characters and / and space . So the string is like this "1000" What is the ...
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
Fl4m3Ph03n1x
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: ) Hello all, this is ...
New
AstonJ
We’ve put together this wiki for Phoenix LiveView - please feel free to add any info you feel is worth including. What is Phoenix LiveV...
New

We're in Beta

About us Mission Statement