1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277
|
# Changelog for persistent-postgresql
## 2.13.6.2
* [#1536](https://github.com/yesodweb/persistent/pull/1536/)
* Build with GHC 9.10
## 2.13.6.1
* [#1518](https://github.com/yesodweb/persistent/pull/1518)
* Normalize postgres type aliases to prevent noop migrations
## 2.13.6
* [#1511](https://github.com/yesodweb/persistent/pull/1511)
* Add the `createPostgresqlPoolTailored` function to support creating
connection pools with a custom connection creation function.
* Expose `getServerVersion` and `createBackend` for user's convenience.
* [#1516](https://github.com/yesodweb/persistent/pull/1516)
* Support postgresql-simple 0.7 and postgresql-libpq 0.10
## 2.13.5.2
* [#1471](https://github.com/yesodweb/persistent/pull/1471)
* Explicitly import `Control.Monad.Trans.lift` to support mtl-2.3.
## 2.13.5.1
* [#1459](https://github.com/yesodweb/persistent/pull/1459)
* Make use of `CautiousMigration` type alias for clarity.
## 2.13.5.0
* [#1362](https://github.com/yesodweb/persistent/pull/1362/)
* Define `withPostgresqlPoolModifiedWithVersion`
## 2.13.4.1
* [#1367](https://github.com/yesodweb/persistent/pull/1367),
[#1366](https://github.com/yesodweb/persistent/pull/1367),
[#1338](https://github.com/yesodweb/persistent/pull/1338),
[#1335](https://github.com/yesodweb/persistent/pull/1335)
* Support GHC 9.2
## 2.13.4.0
* [#1341](https://github.com/yesodweb/persistent/pull/1341)
* Add `SqlBackendHooks` to allow for instrumentation of queries.
* [#1327](https://github.com/yesodweb/persistent/pull/1327)
* Update backend to support new `StatementCache` interface
## 2.13.3.0
* [#1349](https://github.com/yesodweb/persistent/pull/1349)
* Add `BackendCompatible (RawPostgresql b) (RawPostgresql b)` instance.
## 2.13.2.2
* [#1351](https://github.com/yesodweb/persistent/pull/1351/)
* Support `aeson-2.0` in test suite.
## 2.13.2.1
* [#1331](https://github.com/yesodweb/persistent/pull/1331)
* Fixes a bug where `upsertWhere` would fail on a database table with
`MigrationOnly` fields.
## 2.13.2.0
* [#1316](https://github.com/yesodweb/persistent/pull/1316)
* Expose some internals in the new `Database.Persist.Postgresql.Internal` module.
This gives access to the `P` newtype, which is used for de-serializing `PersistValue`s
from `postgresql-simple` code.
## 2.13.1.0
* [#1305](https://github.com/yesodweb/persistent/pull/1305)
* Add `RawPostgresql` wrapper, which exposes the underlying Postgres connection used
to construct a `SqlBackend`.
## 2.13.0.3
* [#1290](https://github.com/yesodweb/persistent/pull/1290)
* Fix the code path for adding references to previously defined columns.
## 2.13.0.2
* Actually release the SafeTORemove fix
## 2.13.0.1
* [#1275](https://github.com/yesodweb/persistent/pull/1275)
* Fix `SafeToRemove`
## 2.13.0.0
* [#1225](https://github.com/yesodweb/persistent/pull/1225)
* Support `persistent-2.13.0.0` making SQlBackend internal
# 2.12.1.1
* [#1235](https://github.com/yesodweb/persistent/pull/1235)
* `upsertWhere` and `upsertManyWhere` only worked in cases where a `Primary`
key was defined on a record, and no other uniqueness constraints. They
have been fixed to only work with records that have a single Uniqueness
constraint defined.
## 2.12.1.0
* Added `upsertWhere` and `upsertManyWhere` to `persistent-postgresql`. [#1222](https://github.com/yesodweb/persistent/pull/1222).
## 2.12.0.0
* Decomposed `HaskellName` into `ConstraintNameHS`, `EntityNameHS`, `FieldNameHS`. Decomposed `DBName` into `ConstraintNameDB`, `EntityNameDB`, `FieldNameDB` respectively. [#1174](https://github.com/yesodweb/persistent/pull/1174)
* Fix XML conversion [#1192](https://github.com/yesodweb/persistent/pull/1192)
## 2.11.0.1
* Fix foreign key migrations [#1167] https://github.com/yesodweb/persistent/pull/1167
* Fix a bug where a foreign key of a field to its table was ignored.
* Fix a bug where a altering details of a foreign key didn't trigger a migration
## 2.11.0.0
* Foreign Key improvements [#1121] https://github.com/yesodweb/persistent/pull/1121
* It is now supported to refer to a table with an auto generated Primary Kay
* It is now supported to refer to non-primary fields, using the keyword `References`
* Implement interval support. [#1053](https://github.com/yesodweb/persistent/pull/1053)
* [#1060](https://github.com/yesodweb/persistent/pull/1060)
* The QuasiQuoter now supports `OnDelete` and `OnUpdate` cascade options.
* Handle foreign key constraint names over 63 characters. See [#996](https://github.com/yesodweb/persistent/pull/996) for details.
* Fix a bug in `upsertSql` query which had not been discovered previously because the query wasn't actually used. [#856](https://github.com/yesodweb/persistent/pull/856)
* [#1072](https://github.com/yesodweb/persistent/pull/1072) Refactored `test/JSONTest.hs` to use `hspec`
* added `runConn_` to run a db connection and return result
* Renamed `db` to `runConnAssert` in `test/PgInit.hs` for clarity
* Ran `test/ArrayAggTest.hs` (which was previously written but not being run)
* Remove unnecessary deriving of Typeable [#1114](https://github.com/yesodweb/persistent/pull/1114)
* Add support for configuring the number of stripes and idle timeout for connection pools [#1098](https://github.com/yesodweb/persistent/pull/1098)
* `PostgresConf` has two new fields to configure these values.
* Its `FromJSON` instance will default stripes to 1 and idle timeout to 600 seconds
* If you're constructing a `PostgresConf` manually, this is a breaking change
* Add `createPostgresqlPoolWithConf` and `withPostgresqlPoolWithConf`, which take a `PostgresConf` for the new configuration.
## 2.10.1.2
* Fix issue with multiple foreign keys on single column. [#1010](https://github.com/yesodweb/persistent/pull/1010)
## 2.10.1.1
* Compatibility with latest persistent-template for test suite [#1002](https://github.com/yesodweb/persistent/pull/1002/files)
## 2.10.1
* Added support for the `constraint=` attribute to the Postgresql backend. [#979](https://github.com/yesodweb/persistent/pull/979)
## 2.10.0
* Added question mark operators (`(?.), (?|.), (?&.)`) to `Database.Persist.Postgresql.JSON` [#863](https://github.com/yesodweb/persistent/pull/863)
* Changes to certain types:
* `PersistValue`: added `PersistArray` data constructor
* `Filter`: Changed the `filterValue :: Either a [a]` to `filterValue :: FilterValue`
## 2.9.1
* Add `openSimpleConnWithVersion` function. [#883](https://github.com/yesodweb/persistent/pull/883)
## 2.9.0
* Added support for SQL isolation levels to via SqlBackend. [#812]
* Fix [832](https://github.com/yesodweb/persistent/issues/832): `repsertMany` now matches `mapM_ (uncurry repsert)` and is atomic.
## 2.8.2
Added module `Database.Persist.Postgresql.JSON` [#793](https://github.com/yesodweb/persistent/pull/793)
* `PersistField` and `PersistFieldSql` instances for `Data.Aeson.Value`
* Filter operators `(@>.)` and `(<@.)` to filter on JSON values
## 2.8.1.1
* Added a more detailed error message when a `numeric` column's scale and precision can't be parsed. [#781](https://github.com/yesodweb/persistent/pull/781)
## 2.8.1
* Implemented `connPutManySql` to utilize batched `putMany`. [#770](https://github.com/yesodweb/persistent/pull/770)
## 2.8.0
* Switch from `MonadBaseControl` to `MonadUnliftIO`
## 2.6.3
* Added new function `migrateEnableExtension`, to enable Postgres extensions in migrations.
## 2.6.2.2
* Because `text` and `varchar` are synonyms in Postgresql, don't attempt to migrate between them. [#762](https://github.com/yesodweb/persistent/pull/762)
## 2.6.2.1
* Fix bug where, if a custom column width was set, the field would be migrated every time [#742](https://github.com/yesodweb/persistent/pull/742)
## 2.6.2
* Expose new functions: `withPostgresqlPoolWithVersion`, `withPostgresqlConnWithVersion` and `createPostgresqlPoolModifiedWithVersion`.
## 2.6.1
* Match changes in persistent
* Clean up warnings
## 2.6
* Atomic upsert support for postgreSQL backend
## 2.5
* changes for read/write typeclass split
## 2.2.2
* Postgresql primary key is Int4, not Int8 [#519](https://github.com/yesodweb/persistent/issues/519)
## 2.2.1.2
* Allow postgresql-simple 0.5
## 2.2.1.1
Query pg_catalog instead of information_schema for metadata.
This helps with permission issues as reported in issue #501
## 2.2.1
* Fix treatment of `NULL`s inside arrays. For example, now you
can use `array_agg` on a nullable column.
* New derived instances for `PostgresConf`: `Read`, `Data` and `Typeable`.
* New `mockMigration` function. Works like `printMigration` but
doesn't need a database connection.
* Fix typo on error message of the `FromJSON` instance of `PostgresConf`.
## 2.2
* Optimize the `insertMany` function to insert all rows and retrieve their keys in one SQL query. [#407](https://github.com/yesodweb/persistent/pull/407)
## 2.1.6
* Postgresql exceptions [#353](https://github.com/yesodweb/persistent/issues/353)
## 2.1.5.3
Migrations for custom primary keys
## 2.1.5.2
Support foreign key references to composite primary keys #389
## 2.1.5
* Allow timestamp value in database to be serialized (presumes UTC timezone) [Yesod #391](https://github.com/yesodweb/persistent/issues/391)
## 2.1.4
* Treat unknown extension types as PersistDbSpecific values [#385](https://github.com/yesodweb/persistent/pull/385)
## 2.1.3
* Added a `Show` instance for `PostgresConf`.
* `createPostgresqlPoolModified` added, see [relevant mailing list discussion](https://groups.google.com/d/msg/yesodweb/qUXrEN_swEo/O0pFwqwQIdcJ)
## 2.1.2.1
Documentation typo fix
## 2.1.1
Added `FromJSON` instance for `PostgresConf`.
|