esqueleto VS stackage

Compare esqueleto vs stackage and see what are their differences.

esqueleto

Bare bones, type-safe EDSL for SQL queries on persistent backends. (by prowdsponsor)

stackage

Stable Haskell package sets: vetted consistent packages from Hackage (by commercialhaskell)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
esqueleto stackage
5 13
177 520
0.0% -0.4%
0.0 9.9
over 7 years ago 9 days ago
Haskell Dockerfile
BSD 3-clause "New" or "Revised" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

esqueleto

Posts with mentions or reviews of esqueleto. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-15.
  • Revisiting Haskell after 10 years
    8 projects | dev.to | 15 Jan 2024
    Writing Haskell programs that rely on third-party packages is still an issue when it’s a not actively maintained package. They get out of date with the base library (Haskell’s standard library), and you might see yourself in a situation where you need to downgrade to an older version. This is not exclusive to Haskell, but it happens more often than I’d like to assume. However, if you only rely on known well-maintained libraries/frameworks such as Aeson, Squeleto, Yesod, and Parsec, to name a few, it’s unlikely you will face troubles at all, you just need to be more mindful of what you add as a dependency. There’s stackage.org now, a repository that works with Stack, providing a set of packages that are proven to work well together and help us to have reproducible builds in a more manageable way—not the solution for all the cases but it’s good to have it as an option.
  • How to use PostgreSQL with Haskell: persistent + esqueleto
    1 project | dev.to | 3 Oct 2023
    However, we can use Esqueleto (”a bare bones, type-safe EDSL for SQL queries”) with Persistent's serialization to write type-safe SQL queries. It’s unlikely that you want to use Persistent by itself with SQL, so let’s use and review them together.
  • What databases do you find the most productive to connect to Haskell?
    3 projects | /r/haskell | 29 Dec 2022
    Postgresql-simple is a great library, it makes a nice use of overloaded strings to do the job. Some other nice libraries to keep an eye on are opaleye (postgres specific, which is equally nice but could be a bit difficult to get why the types are so big) and a combination of persistent (not DB specific! can work on postgres, sqlite, but also noSQL DBs like mongo, it's still easy to learn but you lose some things, such as joins due to the power of being agnostic) + esqueleto for type safe joins (be sure to look up the experimental package, it's a more comfortable syntax that will soon become the default one).
  • Notes on Luca Palmieri's Zero to Production in Rust
    1 project | /r/rust | 26 Jun 2022
    Using esqueleto in one of my haskell projects was a huge time sink and a major barrier to entry for colleagues.
  • Go performance from version 1.2 to 1.18
    14 projects | news.ycombinator.com | 3 Feb 2022
    In Haskell: https://hackage.haskell.org/package/esqueleto

    Either it analyzes the given SQL to determine the in/out types of each SQL query, or it calls the database describe feature at compile-time.

stackage

Posts with mentions or reviews of stackage. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-15.
  • Revisiting Haskell after 10 years
    8 projects | dev.to | 15 Jan 2024
    Writing Haskell programs that rely on third-party packages is still an issue when it’s a not actively maintained package. They get out of date with the base library (Haskell’s standard library), and you might see yourself in a situation where you need to downgrade to an older version. This is not exclusive to Haskell, but it happens more often than I’d like to assume. However, if you only rely on known well-maintained libraries/frameworks such as Aeson, Squeleto, Yesod, and Parsec, to name a few, it’s unlikely you will face troubles at all, you just need to be more mindful of what you add as a dependency. There’s stackage.org now, a repository that works with Stack, providing a set of packages that are proven to work well together and help us to have reproducible builds in a more manageable way—not the solution for all the cases but it’s good to have it as an option.
  • Leaving Haskell Behind
    7 projects | news.ycombinator.com | 24 Aug 2023
    > That is fine, as far as it goes, but obviously this will, at some point, be at odds with the interests of programmers looking to use Haskell as a practical, stable tool.

    That's what Stackage is.

    Stackage provides consistent sets of Haskell packages, known to build together and pass their tests before becoming Stackage Nightly snapshots and LTS (Long Term Support) releases. [1]

    Java will never get this.

    [1] https://www.stackage.org/

  • Haskell IDE setup
    3 projects | /r/haskell | 24 Feb 2023
    makefile_dir := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) export PATH := $(makefile_dir):$(PATH) project_name ?= project_main ?= src/.hs retag_file ?= $(project_main) stack.yaml: @test -f stack.yaml || (echo -e "This makefile requires a 'stack.yaml' for your project.\nYou don't need to use 'stack' to build your project.\nYou just need a 'stack.yaml' specifying a resolver compatible with your GHC version.\nSee https://www.stackage.org/" && exit 1) stack: stack.yaml @which stack || (echo -e "This makefile requires 'stack' to be on your path. Use GHCup to install it.\nSee https://www.haskell.org/ghcup/" && exit 1) .PHONY: stack warning.txt: -@uname -a | grep -q Darwin && echo "WARNING: On Mac, you must alias 'make' to 'gmake' in your shell config file (e.g. ~/.bashrc or ~/.zshrc). Symbolic links will not work." | tee warning.txt @echo "Add 'warning.txt' to your .gitignore file if you never want to see this message again." hasktags: warning.txt stack @echo 'stack exec -- hasktags' > hasktags @chmod +x hasktags @echo "You might like to add 'hasktags' to your .gitignore file." format: stack @stack exec -- fourmolu --stdin-input-file $(project_main) .PHONY: format retag: warning.txt stack @stack exec -- haskdogs -i $(retag_file) --hasktags-args "-x -c -a" | sort -u -o tags tags .PHONY: retag tags: warning.txt hasktags stack @stack exec -- haskdogs .PHONY: tags ghcid: stack @stack exec -- ghcid \ --command 'stack repl --ghc-options "-fno-code -fno-break-on-exception -fno-break-on-error -v1 -ferror-spans -j"' \ --restart stack.yaml \ --restart $(project_name).cabal \ --warnings \ --outputfile ./ghcid.txt .PHONY: ghcid
  • stack
    7 projects | /r/haskell | 17 Jul 2022
  • Most current materials for learning Haskell
    2 projects | /r/haskell | 10 May 2022
    (why lts-18.28? it's the latest 8.10 release on https://www.stackage.org/ )
  • Monthly Hask Anything (March 2022)
    5 projects | /r/haskell | 2 Mar 2022
    I don't see way community maintenance can change the GHC for nightly.
  • Is it possible to install C libraries before building on Hackage?
    3 projects | /r/haskell | 12 Aug 2021
    It makes total sense that it fails since at no point I requested that the library be installed, which makes me wonder: Is there any way to request Hackage to install SDL and GLEW before attempting the build? I see Stackage has debian-bootstrap.sh. Does something similar exist for Hackage?
  • No idea how to add packages
    1 project | /r/haskell | 27 Jun 2021
    At this point, you can try a Stack snapshot that uses an older version of GHC. Looking at Stackage, you can see that the latest version before 8.10.* is 8.8.4 (using LTS 16.31). Starting over with that snapshot, you find that the packages that you need are in the snapshot and work.
  • [GHC Proposals] GHC Maintainer preview
    4 projects | /r/haskell | 3 Apr 2021
    On the contrary, I think this is standard practice for packages which are part of stackage. When stackage nightly switches to a new version of ghc, all the packages which are incompatible with the new ghc are dropped from nightly. My understanding is that maintainers are then expected to fix their packages, at which point more and more packages are included in the nightly snapshot. The next lts to include that version of ghc is only released later, once most packages have been added back, so unlike ghc users who diligently upgrade to the latest ghc, stackage users who diligently upgrade the latest lts snapshot shouldn't see a big drop in the number of compatible packages.
  • Setup dev container with language server out of the box
    3 projects | /r/haskellquestions | 3 Apr 2021
    I found the latest stack lts version, and it's associated ghc version here: https://www.stackage.org/

What are some alternatives?

When comparing esqueleto and stackage you can also consider the following projects:

opaleye

cblrepo - Tool to simplify managing a consistent set of Haskell packages for distributions.

yxdb-utils - Utilities for parsing Alteryx Database format

cargo-crev - A cryptographically verifiable code review system for the cargo (Rust) package manager.

groundhog - This library maps datatypes to a relational model, in a way similar to what ORM libraries do in OOP. See the tutorial https://www.schoolofhaskell.com/user/lykahb/groundhog for introduction

Cabal - Official upstream development repository for Cabal and cabal-install

hocilib - A lightweight Haskell binding to the OCILIB C API

stackage-curator

beam - A type-safe, non-TH Haskell SQL library and ORM

cabal2nix - Generate Nix build instructions from a Cabal file

mysql-simple - A mid-level client library for the MySQL database, intended to be fast and easy to use.

stackage-upload - A more secure version of cabal upload which uses HTTPS