bitemyapp / bitemyapp/esqueleto
RDBMS-specific functions in generic `Database.Esqueleto` module
- Dominant language
- Haskell
- Stars
- 399
- Forks
- 107
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 1
Description
There's functions like `ilike` where [the docs say](https://hackage.haskell.org/package/esqueleto-3.5.11.1/docs/Database-Esqueleto-Experimental.html#v:ilike):
> Supported by PostgreSQL only.
Or others where both MySQL and Postgres support them, but no other RDBMSes. Then there's also modules like `Database.Esqueleto.PostgreSQL` that have RDBMS-specific code, and this is [explicitly pointed out](https://hackage.haskell.org/package/esqueleto-3.5.11.1/docs/Database-Esqueleto.html#g:9). So it seems like the intent is that such functions don't go in the generic `Database.Esqueleto`.
It's also pretty confusing as a user, and sometimes frustrating to find a function in HLS autocomplete that I can't actually use. It would be preferable if I can safely use anything from `Database.Esqueleto` (or of course `.Experimental`) without having to check individual docs if it's actually available on my RDBMS; anything that's implementation-specific should come from other modules.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.