doobie
FS2
Our great sponsors
doobie | FS2 | |
---|---|---|
12 | 17 | |
2,118 | 2,325 | |
- | 1.1% | |
8.8 | 9.5 | |
about 17 hours ago | 3 days ago | |
Scala | Scala | |
MIT License | GNU General Public License v3.0 or later |
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.
doobie
-
Grasping the concepts and getting them down to earth
Most important/known: * https://http4s.org/ - an HTTP client/server * https://github.com/typelevel/fs2 - streaming * https://github.com/tpolecat/doobie - JDBC
-
doobie map to PostGIS Point
So you need to use PGgeography scala type and import another set of implicits: https://github.com/tpolecat/doobie/blob/main/modules/postgres/src/main/scala/doobie/postgres/pgisgeographyinstances.scala
-
mod team resignation by BurntSushi · Pull Request #671 · rust-lang/team
Developer removing a library integration due to above politics
- Remove Quill Integration
-
It's unsafe to depend on Typelevel Libraries
Doobie removes Quill integration in order to make some sort of political protest. The Quill developers are harassed on Twitter.
- Why is tpolecat against ZIO?
- Removes integration with Quill, which is now part of the ZIO organization, which I will not support
-
Zio / Zionomicon : is it worth it ?
The libraries doobie and skunk are more closely associated with cats. They both use cats-effect and fs2 for implementing database connectiona and input-output operations. The doobie library is a wrapper on JDBC, and as such is compatible with many DBMS, such as MySQL, PostgreSQL, H2, Oracle... Whereas skunk is specific to PostgreSQL, and is based on using the server protocol of that database.
-
Hiding Doobie's ConnectionIO implementation detail
You may find this issue helpful. tl;dr you can easily make a Transactor with the void Strategy that just ignores the null Connection. But I’m with Rob: at that point, you’re not actually testing anything.
FS2
- Ask HN: What are some of the most elegant codebases in your favorite language?
-
The Great Concurrency Smackdown: ZIO versus JDK by John A. De Goes
Recently, CE3 has had similar issues reported across multiple repositories, almost an epidemic of reports!
-
Parallel streaming in Haskell: Part 1 – Fast, efficient, and fun
Thanks for the explanation!
So it's pull based and not push based like most other streams lib.
Does maybe someone know how this compares to FS2 or Iteratees than? (Both are also pull based streaming solutions).
https://fs2.io/#/
https://en.wikipedia.org/wiki/Iteratee
Looks quite similar to me. Is the Scala FS2 lib maybe even a clones of the Haskell solution? Or are they different in important aspects?
-
Grasping the concepts and getting them down to earth
Most important/known: * https://http4s.org/ - an HTTP client/server * https://github.com/typelevel/fs2 - streaming * https://github.com/tpolecat/doobie - JDBC
-
Should I Move From PHP to Node/Express?
On the contrary, switching to the functional mindset, with something like Typelevel Scala3 and respective cats and cats-effect fs2 frameworks, helps to rethink a lot of designs and development approaches.
-
Is Scala a good choice for a data intensive web backend?
fs2 for streaming.
-
Is “Functional Programming in Scala” 1st edition still relevant?
Finally, the last chapter has been rewritten to be based on some of the main design ideas from FS2 (https://fs2.io), which I hope will be more approachable than the 1st edition.
-
FS2 stream doesn't work as I expect it to
Just to clarify, is your doubt about the meaning of the api, or do you think you have found a bug? In either case, you can also open a Github discussion https://github.com/typelevel/fs2/discussions.
-
How to update and access state that needs to be shared across multiple API endpoints with FP?
Another more reactive solution would to use signals, as in FPR sinal network. fs2 implements this very nicely here https://github.com/typelevel/fs2/blob/8b285a6b54c63d43ed6aa3bb91365652035c90e5/core/shared/src/main/scala/fs2/concurrent/Signal.scala
-
Introducing effects systems S.A. ZIO at work?
Assuming the bug mentioned here is https://github.com/typelevel/fs2/issues/2568, we came up with a partial fix in a day (https://github.com/typelevel/fs2/pull/2569) and a complete fix in 2 days: https://github.com/typelevel/fs2/pull/2572. Note the original bug was opened on a Saturday. :)
What are some alternatives?
Slick - Slick (Scala Language Integrated Connection Kit) is a modern database query and access library for Scala
cats-effect - The pure asynchronous runtime for Scala
Quill - Compile-time Language Integrated Queries for Scala
Diffy
skunk - A data access library for Scala + Postgres.
Http4s - A minimal, idiomatic Scala interface for HTTP
ScalikeJDBC - A tidy SQL-based DB access library for Scala developers. This library naturally wraps JDBC APIs and provides you easy-to-use APIs.
ScalaMock - Native Scala mocking framework
Anorm - The Anorm database library
ScalaTest - A testing tool for Scala and Java developers
Clickhouse-scala-client - Clickhouse Scala Client with Reactive Streams support
ScalaMeter - Microbenchmarking and performance regression testing framework for the JVM platform.