@@ -1,10 +1,325 @@
1+### Version 0.7.0.0 (2023-07-31)
3+ * Remove Eq Null instance. (Future `base` may break it, we remove it profilacticly).
4+ * Use `postgresql-libpq >=0.10.0.0`. It includes critical fixes,
5+ by using `postgresql-simple >=0.7` you won't get older `postgresql-libpq`.
6+ * Drop support for GHC prior 8.6
7+ * Added a class for `postgresql-simple` exceptions: `SomePostgreSqlException`.
8+ This allows to catch all `postgresql-simple` exceptions at once.
9+ (c.f. `AsyncException` in `base).
11+### Version 0.6.5.1 (2023-07-09)
13+ * Support `aeson-2.2.0.0`
15+### Version 0.6.5 (2022-10-30)
19+### Version 0.6.4 (2021-01-06)
21+ * Add foldCopyData helper function
22+ Thanks to Sebastián Estrella for the implementation
23+ https://github.com/haskellari/postgresql-simple/pull/56
24+ * Implement support for postgresql 'interval' type
25+ Thanks to Andre Marques Lee for the implementation
26+ https://github.com/haskellari/postgresql-simple/pull/60
27+ * Depend on `time-compat` to provide uniform `time` related interface.
29+### Version 0.6.3 (2020-11-15)
31+ * Add `fromFieldJSONByteString`
32+ Thanks to tomjaguarpaw for the implementation
33+ https://github.com/haskellari/postgresql-simple/pull/47
34+ * Add `attoFieldParser`
35+ Thanks to Victor Nawothnig for the implementation
36+ https://github.com/haskellari/postgresql-simple/pull/45
37+ * Add `Identity` and `Const` instance
38+ Thanks to Cary Robbins for the implementation
39+ https://github.com/haskellari/postgresql-simple/pull/46
40+ * Add `withTransactionModeRetry'`, a variant of `withTransactionModeRetry`
41+ for all exception types.
42+ Thanks to Elliot Cameron for the implementation
43+ https://github.com/haskellari/postgresql-simple/pull/42
44+ * Fix spurious aborts when retrying transactions
45+ Thanks to Elliot Cameron for the implementation
46+ https://github.com/haskellari/postgresql-simple/pull/34
47+ * Add `Database.PostgreSQL.Simple.Newtypes` module
48+ with `Aeson` newtype.
49+ https://github.com/haskellari/postgresql-simple/pull/55
51+### Version 0.6.2 (2019-04-26)
53+ * Define `MonadFail Ok`.
55+### Version 0.6.1 (2019-03-04)
57+ * Escape double '??' to a literal '?
58+ Thanks to Felix Paulusma for the implementation.
59+ https://github.com/phadej/postgresql-simple/pull/5
61+ * Mention GHC Generics support in the documentation.
62+ Thanks to Gabriel Gonzalez for the implementation.
63+ https://github.com/phadej/postgresql-simple/pull/6
65+ * Better error message for "Query resulted in a command response
66+ Thanks to Max Amanshauser for the implementation.
67+ https://github.com/phadej/postgresql-simple/pull/7
69+ * fromJSONField: Include JSONPath on JSON parse errors
70+ Thanks to Simon Hengel for the implementation.
71+ https://github.com/phadej/postgresql-simple/pull/2
73+ * No TH in implementation
74+ https://github.com/phadej/postgresql-simple/pull/4
76+### Version 0.6 (2018-10-16)
78+ * *Breaking change*: Use `Only` package's `Only` for a common 1-tuple.
80+ Consider a downstream library depending already both on
81+ `Only` and `postgresql-simple` package. This library my define
82+ a `MyClass` with instances for `Only.Only` and `PostgreSQL.Only`.
83+ As now these types are the same, a library would break.
84+ Therefore I consider "merging" types a breaking change.
86+ There are two ways for adopting this change in that scenario:
88+ - Either CPP-guard `PostgreSQL.Only` instance with
91+ #if !MIN_VERSION_postgresql_simple(0,6,0)
92+ instance MyClass (PostgreSQL.Only a) where ...
96+ - or simply remove it and add `postgresql-simple >=0.6` lower bound,
97+ making sure that there's only single `Only`.
99+ * Add `ToField` instances for case-insensitive strict and lazy text.
100+ Thanks to Max Tagher for the implementation.
101+ https://github.com/lpsmith/postgresql-simple/pull/232
103+ * Add support to CockroachDB.
104+ Thanks to Georte Steel.
105+ https://github.com/lpsmith/postgresql-simple/pull/245
107+ * Add Generic ConnectInfo instance
108+ Thanks to Dmitry Dzhus.
109+ https://github.com/lpsmith/postgresql-simple/pull/235
111+ * Add `fromFieldRange :: Typeable a => FieldParser a -> FieldParser (PGRange a)`
112+ https://github.com/lpsmith/postgresql-simple/pull/221
114+ * Add `fromFieldJSONByteString :: FieldParser ByteString`
115+ https://github.com/lpsmith/postgresql-simple/pull/222/files
117+ * Fix off-by-one error in year builder.
118+ Thanks to Nathan Ferris Hunter.
119+ https://github.com/lpsmith/postgresql-simple/pull/230
121+ * Extend ToRow and FromRow to tuples of size 18
122+ Thanks to Bardur Arantsson.
123+ https://github.com/lpsmith/postgresql-simple/pull/229
125+ * Add `Vector` and `Vector.Unboxed` `query` variants.
126+ These are more memory efficient
127+ (especially, if you anyway will convert to some vector)
128+ https://github.com/phadej/1
130+ * Documentation improvements
131+ https://github.com/lpsmith/postgresql-simple/pull/227
132+ https://github.com/lpsmith/postgresql-simple/pull/236
134+### Version 0.5.4.0 (2018-05-23)
135+ * Support GHC-8.4 (Semigroup/Monoid)
137+### Version 0.5.3.0 (2017-05-15)
138+ * Refactored some rudimentary cursor handling code out of the
139+ implementation of the fold operators, into a new
140+ `Database.PostgreSQL.Simple.Cursor` module, thanks to Bardur Arantsson.
142+ * Made the `FromField` instance for `Char` compatible with
143+ postgresql's `bpchar` type. Thanks to Ivan Lazar Miljenovic for
144+ reporting the issue.
146+ * Added `Show` and `Eq` instances for `Notification`, thanks to
149+ * Fixed some example code, thanks to Matvey Aksenov.
151+ * Fixed a problem with using `conversionError` to throw exceptions
152+ of type `SomeException`. Previously, the exception would be
153+ wrapped in a second `SomeException` dynamic constructor which
154+ would cause normal GHC typecase idioms over `SomeException` to fail.
156+### Version 0.5.2.1 (2016-06-29)
157+ * Bumped the lower bound for `base` to 4.6. Thanks to Herbert
158+ Valerio Riedel for reporting the issue.
160+ * Added an `Eq` instance for `SqlError`, thanks to Chris Allen
162+ * Fixed a bug where a all-caps `"NULL"` text value inside a
163+ postgresql array would get parsed as the SQL null value. Thanks
164+ goes to Edgar Gomes and Silk for finding and fixing this mistake.
166+ * Modified `withTransaction` and friends to ignore `IOError`s when
167+ attempting to roll back the transaction. This fixes a buggy
168+ interaction between `withTransaction` and async exceptions (e.g.
169+ `System.Timeout`) on unix platforms. Thanks goes to Erik
170+ Hesselink and Silk for providing the test case that exposed this
173+ * Added the `testTimeout` regression test for the problem above.
175+### Version 0.5.2.0 (2016-05-25)
176+ * Significantly improved the error reporting from
177+ `Copy.putCopyData`, thanks to Ben Gamari.
179+ * Moved the test suite to use `tasty`, with a big thanks
182+ * Added `FromField.optionalField`, and updated the documentation
183+ of `FromField.fromJSONField`, as inspired by an email conversation
186+ * Updated all links in the haddocks to use https, and added a link
187+ to the documentation of `connectPostgreSQL`.
189+ * Added a truncated changelog to the source distribution.
191+### Version 0.5.1.3 (2016-04-30)
192+ * Implemented the Monad of No Return proposal, future-proofing
193+ postgresql-simple against future releases of GHC.
195+ * Fixed a rare and usually benign race condition where
196+ `getNotification` could end up waiting on a newly reallocated
197+ file descriptor index, potentially leading to deadlock if the
198+ descriptor does not become readable promptly. This fix only
199+ applies to GHC 7.8 or later, as it depends on `threadWaitReadSTM`.
201+ * Tweaked the time parsers to accept times of day of the form `hh:mm`,
202+ omitting seconds, following changes made to aeson.
204+ * Updated the documentation of the `In` type to point out a gotcha
205+ when using the SQL fragment `... NOT IN ?` with `In []`. Thanks
206+ goes to Simon Michael and Dan Haraj for bringing this issue to
209+### Version 0.5.1.2 (2015-12-14)
210+ * The syntax generated for empty arrays was changed so that
211+ postgresql's type inference would work better, thanks to
214+ * Further revision and expansion of the new Time documentation.
216+### Version 0.5.1.1 (2015-12-02)
217+ * This is a documentation-only release
219+ * The documentation of the `Time` module has been completely
220+ rewritten, and is far longer and more informative. It contains
221+ a brief overview of civil time, the semantics of postgresql's
222+ time types, and their relation to Haskell's time types via
225+ * The documentation of `connectPostgreSQL` has been modified to
226+ mention the effects of environment variables on the connection
229+ * The documentation of `HStore.Internal` has been unhidden from
232+ * A typo in example code was fixed courtesy of Levi Notik.
234+### Version 0.5.1.0 (2015-10-22)
235+ * Optimized the implementation of the streaming operators to avoid
236+ creating intermediate lists of rows, thanks to Timo von Holtz.
238+ * Added default instances for `ToRow` and `FromRow` that depend on
239+ Generics, thanks to Alexey Khudyakov.
241+ * Fixed support for bytestring-0.9 and GHC 7.4.
243+### Version 0.5.0.1 (2015-09-21)
244+ * Fixed a bug when printing a `ZonedTime` with a negative offset
245+ that is not a whole number of hours.
247+### Version 0.5.0.0 (2015-09-19)
248+ * Removed the deprecated `BuiltinTypes` module.
250+ * Modified the SQL quasiquoter so that it returns a `Query`, not
251+ an overloaded string, and so that the `OverloadedStrings` language
252+ extension is no longer necessary, thanks to Mike Ledger.
254+ * Moved away from `blaze-builder` in favor of `bytestring-builder`. This
255+ shouldn't affect very many people, but does reduce the transitive
258+ * Rewrote the timestamp printers to use the new `Prim`
259+ infrastructure in `bytestring-builder`. The new printers should
260+ be a fair bit faster.
262+ * Added support for exclusion violations to the `ConstraintViolation`
263+ type in the Errors module, thanks to João Cristóvão.
265+ * Moved away from the `uuid` package in favor of the `uuid-types` package,
266+ thanks to Bardur Arantsson. This shouldn't affect anybody, but does
267+ reduce the transitive dependencies.
269+ * Postgresql-simple now explicitly assumes the UTF8 character encoding
270+ for communication between the client and server. All database encodings
271+ support UTF8 except for Mule Internal Code, the Multilingual
272+ Extensions for Emacs. An exception should be raised upon
273+ connecting to a database by the backend if the backend cannot
274+ accommodate this requirement.
276+ * Added `Eq` and `Typeable` instances for `Connection`.
278+ * Added the `foldWith`, `forEachWith`, and `returningWith` families
279+ of functions courtesy of Travis Staton.
281+ * Support for Ranged types, with thanks to Leonid Onokhov for his
284+ * The `FromField` instance for JSON now allows for top-level values that
285+ are not objects or arrays, thanks to Sam Rijs.
287+ * The timestamp parsers have been replaced with those now in Aeson.
288+ Janne Hellsten adapted the old parsers from postgresql-simple for
289+ inclusion in Aeson; Bryan O'Sullivan rewrote those parsers to be
290+ faster, with some tweaks contributed by myself. And now to
291+ bring the effort full circle, the result has been brought back to
292+ postgresql-simple, with some adaptations.
294+ * Fixed a bug in the typeinfo system where postgresql's `_record` type
295+ was being reported as a basic type and not an array type. Thanks to
296+ Nickolay Kolev for helping to expose this issue.
298+ * Fixed a bug with the `typeInfo` operator, thanks to Timmy Tofu. In the
299+ case of parsing subfields of arrays and composites, it would fetch the
300+ `TypeInfo` of the array or composite type and not the subtype.
302+### Version 0.4.10.0 (2015-02-26)
303+ * Added a blurb about SSL/TLS in the documentation for connectPostgreSQL
305+ * Moved some functions into the Internal module, courtesy of Aleksey
308+### Version 0.4.9.0 (2014-12-27)
309+ * Made the fromField method for PGArray available as pgArrayFieldParser,
310+ outside of the typeclass courtesy of Tom Ellis.
312+ * Fixed a missing OverloadedStrings pragma in the documentation of SqlQQ.
314+ * Fixed deprecation warnings, courtesy of Simon Hengel.
1−Version 0.4.8.0 (2014-11-24)
316+### Version 0.4.8.0 (2014-11-24)
2 * Added support for postgresql's citext type extension via the
317 * Added support for postgresql's citext type extension via the
3 case-insensitive package.
318 case-insensitive package.
5 * Added the function parseHStoreList to the HStore module.
320 * Added the function parseHStoreList to the HStore module.
7−Version 0.4.7.0 (2014-10-27)
322+### Version 0.4.7.0 (2014-10-27)
8 * Added support for very old timestamps to UTCTime. Depending on time
323 * Added support for very old timestamps to UTCTime. Depending on time
9 zone, very old timestamps can be returned with a offset from UTC that
324 zone, very old timestamps can be returned with a offset from UTC that
10 contains seconds.
325 contains seconds.
@@ -24,24 +339,24 @@ Version 0.4.7.0 (2014-10-27)
25 Thanks to Michael Snoyman for his assistance with this issue.
340 Thanks to Michael Snoyman for his assistance with this issue.
27−Version 0.4.6.0 (2014-10-07)
342+### Version 0.4.6.0 (2014-10-07)
28 * Added an instance ToField NominalDiffTime.
343 * Added an instance ToField NominalDiffTime.
30−Version 0.4.5.0 (2014-09-26)
345+### Version 0.4.5.0 (2014-09-26)
31 * Added support for retrieving NaN and ±Infinity floating point values
346 * Added support for retrieving NaN and ±Infinity floating point values
32 from postgres to the FromField instances for Float, Double, and Rational.
347 from postgres to the FromField instances for Float, Double, and Rational.
33 The instance for Scientific is unchanged due to the fact it has no
348 The instance for Scientific is unchanged due to the fact it has no
34 way of representing these special values. Thanks goes to Tom Nielsen
349 way of representing these special values. Thanks goes to Tom Nielsen
35 for reporting the issue.
350 for reporting the issue.
37−Version 0.4.4.1 (2014-09-07)
352+### Version 0.4.4.1 (2014-09-07)
38 * Fixed a rather serious bug that prevented the COPY module from working
353 * Fixed a rather serious bug that prevented the COPY module from working
39 at all on unix clients since version 0.4.3.0. Thanks goes to
354 at all on unix clients since version 0.4.3.0. Thanks goes to
40 Dmitry Dzhus for reporting the issue.
355 Dmitry Dzhus for reporting the issue.
42 * Added a regression test for the COPY module to the test suite.
357 * Added a regression test for the COPY module to the test suite.
44−Version 0.4.4.0 (2014-08-26)
359+### Version 0.4.4.0 (2014-08-26)
45 * Added the jsonb type debuting in PostgreSQL 9.4 to the TypeInfo.Static
360 * Added the jsonb type debuting in PostgreSQL 9.4 to the TypeInfo.Static
46 and Builtin tables, and extended the out-of-box json instances to
361 and Builtin tables, and extended the out-of-box json instances to
47 be compatible with the new type. Thanks to Tobias Florek for the
362 be compatible with the new type. Thanks to Tobias Florek for the
@@ -50,7 +365,7 @@ Version 0.4.4.0 (2014-08-26)
50 * Ported some expanded documentation from mysql-simple, and fixed
365 * Ported some expanded documentation from mysql-simple, and fixed
51 a documentation typo.
366 a documentation typo.
53−Version 0.4.3.0 (2014-07-10)
368+### Version 0.4.3.0 (2014-07-10)
54 * connect and exec now use libpq asynchronously on non-Windows platforms.
369 * connect and exec now use libpq asynchronously on non-Windows platforms.
55 This means we are using threadWaitRead and threadWaitWrite to
370 This means we are using threadWaitRead and threadWaitWrite to
56 have GHC's IO manager schedule non-blocking C calls to libpq,
371 have GHC's IO manager schedule non-blocking C calls to libpq,
@@ -64,7 +379,7 @@ Version 0.4.3.0 (2014-07-10)
64 that originate from client-side code. However, this goal
379 that originate from client-side code. However, this goal
65 isn't perfectly achieved as of yet.
380 isn't perfectly achieved as of yet.
67−Version 0.4.2.3 (2014-06-04)
382+### Version 0.4.2.3 (2014-06-04)
68 * This is strictly a documentation release, with no code changes.
383 * This is strictly a documentation release, with no code changes.
70 * Fixed several documentation typos, thanks to Chris Allen and remdezx.
385 * Fixed several documentation typos, thanks to Chris Allen and remdezx.
@@ -75,13 +390,13 @@ Version 0.4.2.3 (2014-06-04)
76 * De-emphasized connect and ConnectInfo in favor of connectPostgreSQL.
391 * De-emphasized connect and ConnectInfo in favor of connectPostgreSQL.
78−Version 0.4.2.2 (2014-05-15)
393+### Version 0.4.2.2 (2014-05-15)
79− * Fixed compatibility with scientific-0.3.*, thanks to Adam Bergmark
394+ * Fixed compatibility with scientific-0.3.\*, thanks to Adam Bergmark
81 * Improved documentation of the FromField module, as well as the fold,
396 * Improved documentation of the FromField module, as well as the fold,
82 foldWithOptions, executeMany, and returning operators.
397 foldWithOptions, executeMany, and returning operators.
84−Version 0.4.2.1 (2014-03-27)
399+### Version 0.4.2.1 (2014-03-27)
85 * Fixed bug in Values syntax generation
400 * Fixed bug in Values syntax generation
87 * Improved documentation, including examples of multi-row update,
402 * Improved documentation, including examples of multi-row update,
@@ -89,17 +404,17 @@ Version 0.4.2.1 (2014-03-27)
89 floating point numbers from the database, and the IsString instance
404 floating point numbers from the database, and the IsString instance
90 for QualifiedIdentifier.
405 for QualifiedIdentifier.
92−Version 0.4.2.0 (2014-03-22)
407+### Version 0.4.2.0 (2014-03-22)
93 * Added ToField and FromField instances for the scientific package
408 * Added ToField and FromField instances for the scientific package
95 * Changed the Identifier and QualifiedIdentifier to use Text in
410 * Changed the Identifier and QualifiedIdentifier to use Text in
96 order to avoid encoding errors. Technically this requires a
411 order to avoid encoding errors. Technically this requires a
97− major verson bump, but let's pretend 0.4.1.0 didn't happen.
412+ major version bump, but let's pretend 0.4.1.0 didn't happen.
99 * Removed non-exhaustive cases in the ToField instance for Values,
414 * Removed non-exhaustive cases in the ToField instance for Values,
100 and tweaked error messages.
415 and tweaked error messages.
102−Version 0.4.1.0 (2014-03-22)
417+### Version 0.4.1.0 (2014-03-22)
103 * Fixed the parsing of arrays containing null values, courtesy of
418 * Fixed the parsing of arrays containing null values, courtesy of
104 Francesco Mazzoli
419 Francesco Mazzoli
@@ -111,17 +426,17 @@ Version 0.4.1.0 (2014-03-22)
111 more general than executeMany and returning. See the
426 more general than executeMany and returning. See the
112 Database.PostgreSQL.Simple.Types.Values data type.
427 Database.PostgreSQL.Simple.Types.Values data type.
114−Version 0.4.0.2 (2014-01-12)
429+### Version 0.4.0.2 (2014-01-12)
115 * Tweaked C preprocessor directive to be more portable
430 * Tweaked C preprocessor directive to be more portable
117 * Tweaked testsuite for compatibility with aeson-0.7
432 * Tweaked testsuite for compatibility with aeson-0.7
119−Version 0.4.0.1 (2013-12-21)
434+### Version 0.4.0.1 (2013-12-21)
120 * Relaxed dependency on aeson to >= 0.6
435 * Relaxed dependency on aeson to >= 0.6
122 * Update the documentation of `fromField`
437 * Update the documentation of `fromField`
124−Version 0.4.0.0 (2013-12-21)
439+### Version 0.4.0.0 (2013-12-21)
125 * Changed the calling code of `fromField` so that it always sends
440 * Changed the calling code of `fromField` so that it always sends
126 a copy of the raw data. This should be a small but significant
441 a copy of the raw data. This should be a small but significant
127 performance bump for most people most of the time; however it
442 performance bump for most people most of the time; however it
@@ -137,15 +452,15 @@ Version 0.4.0.0 (2013-12-21)
138 * Added FromField instances for IORef, MVar, and IOVector.
453 * Added FromField instances for IORef, MVar, and IOVector.
140−Version 0.3.10.0 (2013-12-17)
455+### Version 0.3.10.0 (2013-12-17)
141 * Added the queryWith function, courtesy of Leonid Onokhov
456 * Added the queryWith function, courtesy of Leonid Onokhov
143 * Added the Default type, for representing postgresql's default values
458 * Added the Default type, for representing postgresql's default values
145−Version 0.3.9.1 (2013-10-28)
460+### Version 0.3.9.1 (2013-10-28)
146 * Removed dependency on hashable
461 * Removed dependency on hashable
148−Version 0.3.9.0 (2013-10-27)
463+### Version 0.3.9.0 (2013-10-27)
149 * Added FromField and ToField instances for the `uuid` package,
464 * Added FromField and ToField instances for the `uuid` package,
150 courtesy of Bas van Dijk.
465 courtesy of Bas van Dijk.
@@ -155,16 +470,16 @@ Version 0.3.9.0 (2013-10-27)
155 * Added the fromBinary, fromHStoreMap, and fromHStoreList newtype
470 * Added the fromBinary, fromHStoreMap, and fromHStoreList newtype
156 unwrapper functions, courtesy of Bas van Dijk.
471 unwrapper functions, courtesy of Bas van Dijk.
158−Version 0.3.8.0 (2013-10-11)
473+### Version 0.3.8.0 (2013-10-11)
159 * Fixed the example code in `FromField`, thanks to Adam Bergmark.
474 * Fixed the example code in `FromField`, thanks to Adam Bergmark.
161 * Added `Notification.getBackendPID`.
476 * Added `Notification.getBackendPID`.
163−Version 0.3.7.1 (2013-09-12)
478+### Version 0.3.7.1 (2013-09-12)
164 * Relaxed the dependency on bytestring-0.10 back to bytestring-0.9,
479 * Relaxed the dependency on bytestring-0.10 back to bytestring-0.9,
165 courtesy of Michael Snoyman
480 courtesy of Michael Snoyman
167−Version 0.3.7.0 (2013-09-11)
482+### Version 0.3.7.0 (2013-09-11)
168 * Added `aeson` as a dependency.
483 * Added `aeson` as a dependency.
170 * Added ToField and FromField instances for aeson's JSON.Value type,
485 * Added ToField and FromField instances for aeson's JSON.Value type,
@@ -185,7 +500,7 @@ Version 0.3.7.0 (2013-09-11)
186 * Various documentation fixes.
501 * Various documentation fixes.
188−Version 0.3.6.0 (2013-08-19)
503+### Version 0.3.6.0 (2013-08-19)
189 * Added the json type to BuiltinTypes and TypeInfo.Static, courtesy of
504 * Added the json type to BuiltinTypes and TypeInfo.Static, courtesy of
190 Manuel Gómez.
505 Manuel Gómez.
@@ -196,14 +511,14 @@ Version 0.3.6.0 (2013-08-19)
196 months from now. Fixed the example code in FromField to reflect
511 months from now. Fixed the example code in FromField to reflect
197 this change.
512 this change.
199−Version 0.3.5.0 (2013-08-09)
514+### Version 0.3.5.0 (2013-08-09)
200 * Added an FromRow instance for Vector, semantically identical to the
515 * Added an FromRow instance for Vector, semantically identical to the
201 existing FromRow instance for [], courtesy of Doug Beardsley
516 existing FromRow instance for [], courtesy of Doug Beardsley
203 * Reworked the documentation for the Copy module, and tweaked the
518 * Reworked the documentation for the Copy module, and tweaked the
204 documentation for the LargeObjects module.
519 documentation for the LargeObjects module.
206−Version 0.3.4.0 (2013-07-23)
521+### Version 0.3.4.0 (2013-07-23)
207 * Added direct support for COPY IN and COPY OUT, without having
522 * Added direct support for COPY IN and COPY OUT, without having
208 to use raw postgresql-libpq calls and postgresql-simple's Internal
523 to use raw postgresql-libpq calls and postgresql-simple's Internal
@@ -212,49 +527,49 @@ Version 0.3.4.0 (2013-07-23)
212 exception instead of an ErrorCall exception when it fails to fetch
527 exception instead of an ErrorCall exception when it fails to fetch
213 the connection's file descriptor from libpq.
528 the connection's file descriptor from libpq.
215−Version 0.3.3.2 (2013-06-18)
530+### Version 0.3.3.2 (2013-06-18)
216 * Optimized the definition of `mconcat` in the Monoid instance for
531 * Optimized the definition of `mconcat` in the Monoid instance for
217 the Query type, courtesy of Joey Adams.
532 the Query type, courtesy of Joey Adams.
219−Version 0.3.3.1 (2013-06-06)
534+### Version 0.3.3.1 (2013-06-06)
220 * `getNotification` now works on Windows, albeit using a one-second
535 * `getNotification` now works on Windows, albeit using a one-second
221 polling loop, courtesy of Joey Adams.
536 polling loop, courtesy of Joey Adams.
223−Version 0.3.3.0 (2013-05-29)
538+### Version 0.3.3.0 (2013-05-29)
224 * Fixed two issues with the fold operator: fold would raise the wrong
539 * Fixed two issues with the fold operator: fold would raise the wrong
225 exception, and gave the database cursor a static name preventing
540 exception, and gave the database cursor a static name preventing
226 folds from being nested. Thanks to Joey Adams for his
541 folds from being nested. Thanks to Joey Adams for his
227 work on these issues.
542 work on these issues.
229−Version 0.3.2.0 (2013-05-20)
544+### Version 0.3.2.0 (2013-05-20)
230 * Added a savepoint abstraction to the Transaction module, courtesy
545 * Added a savepoint abstraction to the Transaction module, courtesy
231 of Joey Adams
546 of Joey Adams
233−Version 0.3.1.2 (2013-04-29)
548+### Version 0.3.1.2 (2013-04-29)
234 * Fixed hstore parser to not unnecessarily reverse the key-value pairs
549 * Fixed hstore parser to not unnecessarily reverse the key-value pairs
236−Version 0.3.1.1 (2013-04-29)
551+### Version 0.3.1.1 (2013-04-29)
237 * Fixed hstore parser to recognize empty hstores, courtesy of Simon
552 * Fixed hstore parser to recognize empty hstores, courtesy of Simon
240−Version 0.3.1.0 (2013-04-26)
555+### Version 0.3.1.0 (2013-04-26)
241 * Added support for Range and Composite types to the TypeInfo system.
556 * Added support for Range and Composite types to the TypeInfo system.
243 * Added support for hstore types in the Simple.HStore module.
558 * Added support for hstore types in the Simple.HStore module.
245 * Improved documentation of the FromField module.
560 * Improved documentation of the FromField module.
247−Version 0.3.0.1 (2013-03-26)
562+### Version 0.3.0.1 (2013-03-26)
248 * A large chunk of the documentation inside the FromField module had
563 * A large chunk of the documentation inside the FromField module had
249 silently failed to render in Haddock.
564 silently failed to render in Haddock.
251−Version 0.3.0.0 (2013-03-25)
566+### Version 0.3.0.0 (2013-03-25)
252 * Added support for PostgreSQL's Array Types. Thanks to Jason Dusek
567 * Added support for PostgreSQL's Array Types. Thanks to Jason Dusek
253 for his work on this feature.
568 for his work on this feature.
255 * Added a brand new TypeInfo system that gives FromField instances
570 * Added a brand new TypeInfo system that gives FromField instances
256 convenient and efficient access to the pg_type metatable. This
571 convenient and efficient access to the pg_type metatable. This
257− replaced the older typename cache, and was neccesary to properly
572+ replaced the older typename cache, and was necessary to properly
258 support postgres array types. Thanks to Bas van Dijk for his
573 support postgres array types. Thanks to Bas van Dijk for his
259 work on this feature.
574 work on this feature.
@@ -290,33 +605,33 @@ Version 0.3.0.0 (2013-03-25)
290 now stripped out.
605 now stripped out.
293−Version 0.2.4.1 (2012-08-29)
608+### Version 0.2.4.1 (2012-08-29)
294 * Fixed the documentation of `In`. Thanks to rekado and dstcruz for
609 * Fixed the documentation of `In`. Thanks to rekado and dstcruz for
295 pointing this out.
610 pointing this out.
297−Version 0.2.4.0 (2012-08-23)
612+### Version 0.2.4.0 (2012-08-23)
298 * Added the `withTransactionSerializable` and `withTransactionModeRetry`
613 * Added the `withTransactionSerializable` and `withTransactionModeRetry`
299 operators, thanks to Joey Adams.
614 operators, thanks to Joey Adams.
301−Version 0.2.3.0 (2012-08-09)
616+### Version 0.2.3.0 (2012-08-09)
302 * Added the `returning` operator, thanks to Jason Dusek
617 * Added the `returning` operator, thanks to Jason Dusek
304−Version 0.2.2.0 (2012-07-26)
619+### Version 0.2.2.0 (2012-07-26)
305 * Added a ToRow instance for the (:.) type, courtesy of Leonid Onokhov
620 * Added a ToRow instance for the (:.) type, courtesy of Leonid Onokhov
307 * Added the type oid for PostgreSQL's `uuid` type to BuiltinTypes
622 * Added the type oid for PostgreSQL's `uuid` type to BuiltinTypes
309−Version 0.2.1.0 (2012-07-23)
624+### Version 0.2.1.0 (2012-07-23)
310 * Added the FromRow.fieldWith operator, thanks to Leonid Onokhov
625 * Added the FromRow.fieldWith operator, thanks to Leonid Onokhov
312 * Added a type synonym for FieldParser
627 * Added a type synonym for FieldParser
314−Version 0.2.0.1 (2012-06-21)
629+### Version 0.2.0.1 (2012-06-21)
315 * Fixed a compatibility problem with PostgreSQL 8.1, which does not allow
630 * Fixed a compatibility problem with PostgreSQL 8.1, which does not allow
316 clients to set their own value for `standard_conforming_strings`. This
631 clients to set their own value for `standard_conforming_strings`. This
317 connection variable is still set to `on` for PostgreSQL 8.2 and later.
632 connection variable is still set to `on` for PostgreSQL 8.2 and later.
319−Version 0.2: (2012-06-19)
634+### Version 0.2: (2012-06-19)
320 * Removed the conversion from `timestamp` to `UTCTime`. Some code will be
635 * Removed the conversion from `timestamp` to `UTCTime`. Some code will be
321 broken even though it will still compile.
636 broken even though it will still compile.
@@ -325,16 +640,16 @@ Version 0.2: (2012-06-19)
325 * Exported ToRow/FromRow from Database.PostgreSQL.Simple
640 * Exported ToRow/FromRow from Database.PostgreSQL.Simple
328−Version 0.1.4.3: (2012-06-10)
643+### Version 0.1.4.3: (2012-06-10)
329 * Fix language extensions for compatibility with GHC 7.0
644 * Fix language extensions for compatibility with GHC 7.0
331−Version 0.1.4.2: (2012-06-10)
646+### Version 0.1.4.2: (2012-06-10)
332 * Fix a wayward dependency on Text.
647 * Fix a wayward dependency on Text.
334−Version 0.1.4.1: (2012-06-10)
649+### Version 0.1.4.1: (2012-06-10)
335 * Added support for timezones with minutes in their UTC offset.
650 * Added support for timezones with minutes in their UTC offset.
337−Version 0.1.4: (2012-06-10)
652+### Version 0.1.4: (2012-06-10)
338 * Removed pcre-light dependency, courtesy of Joey Adams.
653 * Removed pcre-light dependency, courtesy of Joey Adams.
340 * Reworked support for the Time types.
655 * Reworked support for the Time types.
@@ -346,7 +661,7 @@ Version 0.1.4: (2012-06-10)
346 now the preferred way of dealing with `timestamp` (without time zone).
661 now the preferred way of dealing with `timestamp` (without time zone).
348 * `Database.PostgreSQL.Simple.Time` is a new module that offers types
663 * `Database.PostgreSQL.Simple.Time` is a new module that offers types
349− that accomodate PostgreSQL's infinities.
664+ that accommodate PostgreSQL's infinities.
351 * All time-related `FromField`/`ToField` instances are now based on new,
666 * All time-related `FromField`/`ToField` instances are now based on new,
352 higher-speed parsers and printers instead of those provided by the
667 higher-speed parsers and printers instead of those provided by the
@@ -359,13 +674,13 @@ Version 0.1.4: (2012-06-10)
359 * Renaming some of the type names in `BuiltinTypes`.
674 * Renaming some of the type names in `BuiltinTypes`.
362−Version 0.1.3: (2012-05-30)
677+### Version 0.1.3: (2012-05-30)
363 * Made ZonedTime an instance of FromField and ToField
678 * Made ZonedTime an instance of FromField and ToField
365 * Added getNotificationNonBlocking
680 * Added getNotificationNonBlocking
368−Version 0.1.2: (2012-05-09)
683+### Version 0.1.2: (2012-05-09)
369 * Switched to libpq-based escaping for bytea types; Binary now works with
684 * Switched to libpq-based escaping for bytea types; Binary now works with
370 PostgreSQL 8 courtesy of Joey Adams.
685 PostgreSQL 8 courtesy of Joey Adams.
@@ -378,7 +693,7 @@ Version 0.1.2: (2012-05-09)
378 * Exported (:.) from Database.PostgreSQL.Simple
693 * Exported (:.) from Database.PostgreSQL.Simple
381−Version 0.1.1: (2012-05-06)
696+### Version 0.1.1: (2012-05-06)
382 * Added some preliminary documentation for the Ok, Notification, and
697 * Added some preliminary documentation for the Ok, Notification, and
383 LargeObjects modules
698 LargeObjects modules
@@ -387,7 +702,7 @@ Version 0.1.1: (2012-05-06)
387 * Fixed a bug relating to handling the transaction level
702 * Fixed a bug relating to handling the transaction level
390−Version 0.1: (2012-05-04)
705+### Version 0.1: (2012-05-04)
391 * Renamed several modules, typeclasses, and functions:
706 * Renamed several modules, typeclasses, and functions:
393 QueryParams (renderParams) -> ToRow (toRow)
708 QueryParams (renderParams) -> ToRow (toRow)