opaleye VS stack

Compare opaleye vs stack and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
opaleye stack
9 47
594 3,947
- 0.2%
8.5 9.9
11 days ago 10 days ago
Haskell Haskell
BSD 3-clause "New" or "Revised" License BSD 3-clause "New" or "Revised" 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.

opaleye

Posts with mentions or reviews of opaleye. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-28.
  • What's your favorite Database EDSL/library in Haskell?
    4 projects | /r/haskell | 28 Feb 2023
    If you ever have any questions about Opaleye I'm happy to help. Feel free to open an issue to ask about anything any time.
  • Persistent vs. beam for production database
    2 projects | /r/haskell | 9 Feb 2023
    Sounds like Opaleye isn't on your list of choices, but if it is then feel free to ask me any questions, any time by filing an issue (I'm the Opaleye maintainer).
  • How to build a large-scale haskell backend for a photo sharing app (some questions)
    1 project | /r/haskell | 28 May 2022
    Opaleye is Posgres-only, and Postgres does such a good job of optimizing queries that performance issues basically don't arise. I have a long-standing invitation to improve Opaleye's query generation as soon as anyone can produce a repeatable example of a poorly-performing query. In Opaleye's eight years, no one ever has. There's a thread where two reports have come close, but it's still not clear that that's simply due to using a six year old version of Postgres.
  • What are things that the Haskell scene lacks the most?
    4 projects | /r/haskell | 21 Apr 2022
  • Out of memory when building product-profunctors
    2 projects | /r/haskell | 13 Mar 2022
    Nice! Well done. If you have any more questions about product-profunctors or Opaleye then please let me know. It's best to ask by [opening an issue](https://github.com/tomjaguarpaw/haskell-opaleye/issues/new).
  • Embedded Pattern Matching
    1 project | /r/haskell | 5 Sep 2021
  • How to simply do opaleye field type conversion
    1 project | /r/haskell | 21 Jul 2021
  • Against SQL
    8 projects | news.ycombinator.com | 10 Jul 2021
    The only way out that I can see is to design embedded domain specific languages (EDSLs) that inherit the expressiveness, composability and type safety from the host language. That's what Opaleye and Rel8 (Postgres EDSLs for Haskell do. Haskell is particularly good for this. The query language can be just a monad and therefore users can carry all of their knowledge of monadic programming to writing database queries.

    This approach doesn't resolve all of the author's complaints but it does solve many.

    Disclaimer: I'm the author of Opaleye. Rel8 is built on Opaleye. Other relational query EDSLs are available.

    [1] https://github.com/tomjaguarpaw/haskell-opaleye/

  • Combining Deep and Shallow Embedding of Domain-Specific Languages
    1 project | /r/haskell | 31 Jan 2021
    For an example of how this plays out in practice observe Opaleye's MaybeFields (generously contributed by Shane and /u/ocharles at Circuithub). The definition is essentially identical to Optional from the paper. Instead of a specialised typeclass Inhabited we use the ProductProfunctor NullSpec (which happens to conjure up an SQL NULL, but it could be any other witness).

stack

Posts with mentions or reviews of stack. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-24.
  • Leaving Haskell Behind
    7 projects | news.ycombinator.com | 24 Aug 2023
    Ah, didn't run into this issue, as I don't use vscode.

    Apparently there is some work being done to improve the stack <> hls experience, but I wouldn't know how it's going and when it's being delivered: https://github.com/commercialhaskell/stack/issues/6154

  • Help, i get this error when executing the command "xmonad"
    1 project | /r/xmonad | 1 Jun 2023
    this is it: # This file was automatically generated by 'stack init' # # Some commonly used options have been documented as comments in this file. # For advanced use and comprehensive documentation of the format, please see: # https://docs.haskellstack.org/en/stable/yaml\_configuration/ # Resolver to choose a 'specific' stackage snapshot or a compiler version. # A snapshot resolver dictates the compiler version and the set of packages # to be used for project dependencies. For example: # # resolver: lts-3.5 # resolver: nightly-2015-09-21 # resolver: ghc-7.10.2 # # The location of a snapshot can be provided as a file or url. Stack assumes # a snapshot provided as a file might change, whereas a url resource does not. # # resolver: ./custom-snapshot.yaml # resolver: https://example.com/snapshots/2018-01-01.yaml resolver: url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/20/23.yaml # User packages to be built. # Various formats can be used as shown in the example below. # # packages: # - some-directory # - https://example.com/foo/bar/baz-0.0.2.tar.gz # subdirs: # - auto-update # - wai packages: - xmonad - xmonad-contrib # Dependency packages to be pulled from upstream that are not in the resolver. # These entries can reference officially published versions as well as # forks / in-progress versions pinned to a git hash. For example: # # extra-deps: # - acme-missiles-0.3 # - git: https://github.com/commercialhaskell/stack.git # commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a # # extra-deps: [] # Override default flag values for local packages and extra-deps # flags: {} # Extra package databases containing global packages # extra-package-dbs: [] # Control whether we use the GHC we find on the path # system-ghc: true # # Require a specific version of Stack, using version ranges # require-stack-version: -any # Default # require-stack-version: ">=2.11" # # Override the architecture used by Stack, especially useful on Windows # arch: i386 # arch: x86_64 # # Extra directories used by Stack for building # extra-include-dirs: [/path/to/dir] # extra-lib-dirs: [/path/to/dir] # # Allow a newer minor version of GHC than the snapshot specifies # compiler-check: newer-minor
  • ANN: stack-2.11.1
    2 projects | /r/haskell | 18 May 2023
    Fix incorrect warning if allow-newer-deps are specified but allow-newer is false. See #6068.
  • [ANN] First release candidate for stack-2.11.1
    1 project | /r/haskell | 5 May 2023
    You can download binaries for this pre-release from: Release rc/v2.11.0.1 (release candidate) · commercialhaskell/stack · GitHub .
  • PEP 582 rejected - consensus among the community needed
    7 projects | /r/Python | 28 Mar 2023
    Fair enough! Thanks for the suggestion, then. In fact, the non-Python language I develop most in (Haskell, with the Stack package manager) has exactly that behaviour as a default: new packages are installed to a sandboxed local directory, and it takes an explicit request to install something globally. (And even then, you can switch between different global "known good configurations" of package versions which work well together – a pretty handy feature.)
  • Any open source projects to contribute to for beginners
    8 projects | /r/haskell | 13 Feb 2023
  • How to suppress warnings from external packages?
    1 project | /r/haskell | 30 Jan 2023
    Opened a ticket on GitHub.
  • ANN: stack-2.9.3
    2 projects | /r/haskell | 17 Dec 2022
    In YAML configuration files, the hackage-security key of the package-index key or the package-indices item can be omitted, and the Hackage Security configuration for the item will default to that for the official Hackage server. See #5870.
  • `Stack build` fails with `gcc' failed in phase `Assembler'
    1 project | /r/haskell | 30 Nov 2022
    FYI this was solved in here: https://github.com/commercialhaskell/stack/issues/5958
  • [ANN] First release candidate for stack-2.9.3
    5 projects | /r/haskell | 22 Nov 2022
    Yes, that is correct. Stack's allow-newer: true configuration has always actually meant 'ignore bounds'. However, the author of the allow-newer-deps development has in mind a further development that will introduce an actual ignore-bounds key with the same expressive syntax that is used by Cabal. This is discussed at Stack #5910.

What are some alternatives?

When comparing opaleye and stack you can also consider the following projects:

esqueleto - Bare bones, type-safe EDSL for SQL queries on persistent backends.

ghcup-hs - THIS REPO IS A MIRROR, BUG REPORTS GO HERE:

mywatch

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

HDBC - Haskell Database Connectivity

ghcid - Very low feature GHCi based IDE

database-migrate - database-migrate haskell library to assist with migration for *-simple sql backends.

castle - A tool to manage shared cabal-install sandboxes.

HongoDB - A Simple Key Value Store

profiterole - GHC prof manipulation script

squeal-postgresql - Squeal, a deep embedding of SQL in Haskell

haskell-language-server - Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine.