git.iko.soy/typeable/postgresql-simple
on 8fb2074 help sign in
226 lines 8.5 kB history raw
1Version 0.3.4.0 (2013-07-23)
2 * Added direct support for COPY IN and COPY OUT, without having
3 to use raw postgresql-libpq calls and postgresql-simple's Internal
4 module.
6 * Changed `getNotification` so that it throws a IOError (resource vanished)
7 exception instead of an ErrorCall exception when it fails to fetch
8 the connection's file descriptor from libpq.
10Version 0.3.3.2 (2013-06-18)
11 * Optimized the definition of `mconcat` in the Monoid instance for
12 the Query type, courtesy of Joey Adams.
14Version 0.3.3.1 (2013-06-06)
15 * `getNotification` now works on Windows, albeit using a one-second
16 polling loop, courtesy of Joey Adams.
18Version 0.3.3.0 (2013-05-29)
19 * Fixed two issues with the fold operator: fold would raise the wrong
20 exception, and gave the database cursor a static name preventing
21 folds from being nested. Thanks to Joey Adams for his
22 work on these issues.
24Version 0.3.2.0 (2013-05-20)
25 * Added a savepoint abstraction to the Transaction module, courtesy
26 of Joey Adams
28Version 0.3.1.2 (2013-04-29)
29 * Fixed hstore parser to not unnecessarily reverse the key-value pairs
31Version 0.3.1.1 (2013-04-29)
32 * Fixed hstore parser to recognize empty hstores, courtesy of Simon
33 Meier
35Version 0.3.1.0 (2013-04-26)
36 * Added support for Range and Composite types to the TypeInfo system.
38 * Added support for hstore types in the Simple.HStore module.
40 * Improved documentation of the FromField module.
42Version 0.3.0.1 (2013-03-26)
43 * A large chunk of the documentation inside the FromField module had
44 silently failed to render in Haddock.
46Version 0.3.0.0 (2013-03-25)
47 * Added support for PostgreSQL's Array Types. Thanks to Jason Dusek
48 for his work on this feature.
50 * Added a brand new TypeInfo system that gives FromField instances
51 convenient and efficient access to the pg_type metatable. This
52 replaced the older typename cache, and was neccesary to properly
53 support postgres array types. Thanks to Bas van Dijk for his
54 work on this feature.
56 * Changed the type of the `fromField` and `fromRow` methods to allow
57 a restricted set of IO actions, and stopped pre-calculating the type
58 name of every column. As a result, the type of the `typename`
59 operator changed from `Field -> ByteString` to
60 `Field -> Conversion ByteString`, where Conversion is the new monad
61 that conversion computations run inside.
63 * Improved the documentation of the FromField module.
65 * Added the Database.PostgreSQL.Simple.Errors module, which offers
66 some predicates and functions for interpreting SqlError values, courtesy
67 of Leonid Onokhov.
69 * Added a the name of a column and the associated table's object identifier
70 to ResultError exceptions, courtesy of Jeff Chu.
72 * Moved most of the more detailed transaction operators into the
73 Database.PostgreSQL.Simple.Transaction module.
75 * Changed withTransactionModeRetry to accept a predicate of which
76 SqlErrors to retry, due to the fact that serialization errors can
77 sometimes manifest themselves as constraint violations. Thanks
78 to Oliver Charles for pointing this out and implementing the change.
80 * Added simple tests of the fold operator, thanks to Joey Adams.
82 * Added simple tests of the array conversion code.
84 * Added recognition of -- comments in the quasiquoter, which are
85 now stripped out.
88Version 0.2.4.1 (2012-08-29)
89 * Fixed the documentation of `In`. Thanks to rekado and dstcruz for
90 pointing this out.
92Version 0.2.4.0 (2012-08-23)
93 * Added the `withTransactionSerializable` and `withTransactionModeRetry`
94 operators, thanks to Joey Adams.
96Version 0.2.3.0 (2012-08-09)
97 * Added the `returning` operator, thanks to Jason Dusek
99Version 0.2.2.0 (2012-07-26)
100 * Added a ToRow instance for the (:.) type, courtesy of Leonid Onokhov
102 * Added the type oid for PostgreSQL's `uuid` type to BuiltinTypes
104Version 0.2.1.0 (2012-07-23)
105 * Added the FromRow.fieldWith operator, thanks to Leonid Onokhov
107 * Added a type synonym for FieldParser
109Version 0.2.0.1 (2012-06-21)
110 * Fixed a compatibility problem with PostgreSQL 8.1, which does not allow
111 clients to set their own value for `standard_conforming_strings`. This
112 connection variable is still set to `on` for PostgreSQL 8.2 and later.
114Version 0.2: (2012-06-19)
115 * Removed the conversion from `timestamp` to `UTCTime`. Some code will be
116 broken even though it will still compile.
118 * Renamed a number of data constructors, mostly in the BuiltinTypes module.
120 * Exported ToRow/FromRow from Database.PostgreSQL.Simple
123Version 0.1.4.3: (2012-06-10)
124 * Fix language extensions for compatibility with GHC 7.0
126Version 0.1.4.2: (2012-06-10)
127 * Fix a wayward dependency on Text.
129Version 0.1.4.1: (2012-06-10)
130 * Added support for timezones with minutes in their UTC offset.
132Version 0.1.4: (2012-06-10)
133 * Removed pcre-light dependency, courtesy of Joey Adams.
135 * Reworked support for the Time types.
137 * The conversion from PostgreSQL's `timestamp` (without time zone) type
138 to Haskell's `UTCTime` type is deprecated and will be removed in 0.2.
140 * `Data.Time.LocalTime` now has `FromField`/`ToField` instances. It is
141 now the preferred way of dealing with `timestamp` (without time zone).
143 * `Database.PostgreSQL.Simple.Time` is a new module that offers types
144 that accomodate PostgreSQL's infinities.
146 * All time-related `FromField`/`ToField` instances are now based on new,
147 higher-speed parsers and printers instead of those provided by the
148 time package included in GHC.
150 * Planned breaking changes for 0.2:
152 * Removing the conversion from `timestamp` to `UTCTime`.
154 * Renaming some of the type names in `BuiltinTypes`.
157Version 0.1.3: (2012-05-30)
158 * Made ZonedTime an instance of FromField and ToField
160 * Added getNotificationNonBlocking
163Version 0.1.2: (2012-05-09)
164 * Switched to libpq-based escaping for bytea types; Binary now works with
165 PostgreSQL 8 courtesy of Joey Adams.
167 * postgresql-simple now sets standard_conforming_strings to "on". This
168 per-connection variable is initialized according to the server
169 configuration, which defaults to "off" for PostgreSQL < 9, and "on"
170 for PostgreSQL >= 9. You may need to adjust any string literals in
171 your SQL queries, or set the variable yourself.
173 * Exported (:.) from Database.PostgreSQL.Simple
176Version 0.1.1: (2012-05-06)
177 * Added some preliminary documentation for the Ok, Notification, and
178 LargeObjects modules
180 * Implemented the `fail` method for the monad instance for `Ok`.
182 * Fixed a bug relating to handling the transaction level
185Version 0.1: (2012-05-04)
186 * Renamed several modules, typeclasses, and functions:
188 QueryParams (renderParams) -> ToRow (toRow)
189 QueryResults (convertResults) -> FromRow (fromRow)
190 Param (render) -> ToField (toField)
191 Result (convert) -> FromField (fromField)
193 * Added the `Database.PostgreSQL.Simple.Ok` module, a variation of
194 `Either SomeException` that has an instance for `Alternative` and also
195 uses a list of exceptions to track the ways it has failed.
197 * Changed the return type of `fromField` and `fromRow` from
198 `Either SomeException` to `Ok`.
200 * Thanks to suggestions from Ozgun Ataman, the `FromRow` typeclass has been
201 massively improved. The result is simpler definitions and better
202 compositionality. Also, user-defined instances need not be to be
203 concerned about forcing the converted results to WHNF. Here is an
204 example comparing the old to the new:
206 instance (Result a, Result b) => QueryResults (a,b) where
207 convertResults [fa,fb] [va,vb] = do
208 !a <- convert fa va
209 !b <- convert fb vb
210 return (a,b)
211 convertResults fs vs = convertError fs vs 2
213 instance (FromField a, FromField b) => FromRow (a,b) where
214 fromRow = (,) <$> field <*> field
216 * Added `(:.)`, a pair that allows one to compose `FromRow` instances:
218 instance (FromRow a, FromRow b) => FromRow (a :. b) where
219 fromRow = (:.) <$> fromRow <*> fromRow
221 * Moved the contents `Field` module into the `FromField` module.
223 * Removed the `RawResult` type.
225 * Added `DefaultIsolationLevel` as a distinct `IsolationLevel` option
226 and `DefaultReadWriteMode` as a distinct `ReadWriteMode`.