* Add failing test
* Refactor newIdentFor to not have an error case
* annotation for warning
* refactoring
* Expression parser
* holy shit it works
* Add a shitload of tests
* cross join
* Find a failing case
* Account for that one case
* works
* Composability test
* okay now it tests something
* Documentation updates
* Add since, changelog
* fix
* add insertSelectWithConflict to allow insert with conflict resolution
* insertSelectWithConflictCount does nothing when no updates given and add tests
* no longer require undefined for insertSelectWithConflict
* Update src/Database/Esqueleto/PostgreSQL.hs
Co-Authored-By: Matt Parsons <parsonsmatt@gmail.com>
* Update src/Database/Esqueleto/PostgreSQL.hs
Co-Authored-By: Matt Parsons <parsonsmatt@gmail.com>
* Update src/Database/Esqueleto/PostgreSQL.hs
Co-Authored-By: Matt Parsons <parsonsmatt@gmail.com>
* Update src/Database/Esqueleto/PostgreSQL.hs
Co-Authored-By: Matt Parsons <parsonsmatt@gmail.com>
* Move non postgres related functions out of postgres module to internal.
* add entry to changelog
* Update between so it works with SQL values
* Add support for composite keys in between clause
* Remove unused values from ERaw in construct
* Update unsafeSqlBinOp to handle composite keys and between to use >=., <=. and &&.
* Support composite keys in unsafeSqlBinOp correctly
* Updated changelog
* Update version number of between to 3.1.0
* added PostgreSQL.JSON module
* finished adding all JSON operators
* cleanup
* half way through writing tests
* final tweaks to comments
* finished with JSON tests
* upped persistent dependency to 2.10.0 because of PersistArray data constructor addition needed for JSON operators
* noticed the minus operator with text[] as right operand was only added in PSQL v10, added function and adjusted types/tests
* adjusted yaml configs for updated dependencies and PSQL v10 in Travis
* try to get PostgreSQL 10 running
* use @since notation
* removed postgresql from 'services' field
* and one more time, with FEELING! (and postgresql-10)
* foo
* PSQL 10 runs on 5433, it seems? reverting .travis.yml changes and setting test conn to port 5433
* of course I forget to add the PORT env > .<
* doop-dee-doo
* herp-a-derp
* last commit (hopefully)
* also have more recent dependencies in the 'compiler should error' tests
* why does it feel like this'll go on for a while still?
* copied some extra-deps from the persistent ymls
* aaaaand we're done... right?
* added persistent-postgresql to the dependencies and used its instances for Aeson.Value
* small comment fix
* moved the instances to their own module, this way they're optional to use if you don't use persistent-postgresql
* use port 5432, like a normal PostgreSQL!
* added JSONB newtype with instances, instead of orphaning Aeson.Value
* reworked everything to use the JSONB newtype. And adjusted most comments to reflect the change
* fixed all the tests (just making it compile again)
* that's right, Travis' PSQL v10 NEEEEDS it to be port 5433... for some reason
* update on the haddockumentation
* added JSONAccessor data type for easier usage of certain operators
* Also add to changelog.md
* JSONExpr -> JSONBExpr
* this damn PGPORT is really irritating
Aggregate functions like array_agg and string_agg will return NULL instead of
empty arrays and empty strings resp. when run on zero rows. This change reflects
that in the haskell types. It also adds a "maybeArray" function that
coalesces NULL into an empty array, because currently there is no way to write
an empty array literal (`val []` does not work)
Factored out the db specific tests and kept the macros as placeholders.
Import everything in the cabal file for now.
Only using the flags to test that everything still works.