Slick
Clickhouse-scala-client
Our great sponsors
Slick | Clickhouse-scala-client | |
---|---|---|
17 | 1 | |
2,636 | 111 | |
0.1% | 0.0% | |
8.6 | 8.3 | |
3 days ago | 28 days ago | |
Scala | Scala | |
BSD 2-clause "Simplified" License | GNU Lesser General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Slick
- How many people/companies are fully on Scala 3?
-
First Slick prerelease for Scala 3!
Made a PR on slick to document this https://github.com/slick/slick/pull/2760 (workaround is quite easy, you can just define def tupled = (apply _).tupled in the companion object of the case class and it will also compile for all Scala versions).
-
Sketch of a Post-ORM
The Scala ecosystem has a few ways to do composable type-safe query building, e.g. Slick[0] or more recently Quill[1]. . I believe both also have ways to do compile-time string interpolation (e.g. sql"""select * from users where id = ${user.id}""") which generate prepared statements (I know Slick does prepared statements. Quill has similar macros but I haven't looked into how safe they are to use).
-
Database abstraction library which allows a clean domain model
With all this in mind, I landed at the first candidate: slick from https://scala-slick.org/ that you all probably know.
-
Scala 3 migration: 7 benefits that outweigh the risks
I think Slick's current priority is also getting in Scala 3 support: https://github.com/slick/slick/issues/2177
-
Slick 3.4.x is here!
Future releases might not be announced here. To get notified, go to https://github.com/slick/slick, click the Watch dropdown button at the top, select Custom, check Releases, and click Apply.
-
Is there any good resource for learning Slick (3.x)?
https://github.com/slick/slick/pull/2097 now I use slightly lower version of slick so this might be an upgrade that resolves (I do recall using it in 21 and it was still buggy and I filed a ticket, which I cannot find at the moment), but given a complex enough query (we have one in PROD which has tons of flexibility in terms of filters that can be passed in) but it also makes for complex code.
-
Slick 3.4.0 is imminent
I started writing a reply but then I realized it would be long and depends on exactly what you mean, so maybe it's better to post the question in https://github.com/slick/slick/discussions/categories/questions?
You can see the draft release notes here and the upgrade guide at https://scala-slick.org/doc/prerelease/upgrade.html#upgrade-from-3-3-x-to-3-4-0. The latest docs are at https://scala-slick.org/doc/prerelease/index.html.
Clickhouse-scala-client
We haven't tracked posts mentioning Clickhouse-scala-client yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
doobie - Functional JDBC layer for Scala.
Quill - Compile-time Language Integrated Queries for Scala
ScalikeJDBC - A tidy SQL-based DB access library for Scala developers. This library naturally wraps JDBC APIs and provides you easy-to-use APIs.
Squeryl - A Scala DSL for talking with databases with minimum verbosity and maximum type safety
Sorm - A functional boilerplate-free Scala ORM
Anorm - The Anorm database library
cats-effect - The pure asynchronous runtime for Scala
Phantom - Schema safe, type-safe, reactive Scala driver for Cassandra/Datastax Enterprise
Activate - Abandoned: Pluggable persistence in Scala
Elastic4s - Elasticsearch Scala Client - Reactive, Non Blocking, Type Safe, HTTP Client