[Haskell-cafe] ANNOUNCE: Takusen 0.8.6
Jason Dagit
dagit at codersbase.com
Sat Jul 31 14:10:55 EDT 2010
Hello,
The Takusen team would like to announce the latest release of Takusen,
0.8.6. This is primarily a bug fix and test suite enhancement
release. The most notable new feature is limited support for string
encodings with ODBC. The full list of changes is included at the
at the end of this announcement.
= Interested in Takusen development? =
Takusen is looking for a new long term maintainer. I have agreed to
fill the role of maintainer for now, but we are seeking an
enthusiastic individual with spare time and a desire to lead Takusen
development.
= How to get it =
This release is available on hackage:
cabal update && cabal install Takusen
The source code is available on code.haskell.org:
darcs get http://code.haskell.org/takusen
= New features =
- Alistair Bayley:
* Database/PostgreSQL/PGFunctions.lhs: show instance for UUID prints
Word64s in hex.
* Database/PostgreSQL/Enumerator.lhs: add UUID and marshaling
functions.
* Database/PostgreSQL/PGFunctions.lhs: add UUID and marshalling
functions.
* Database/ODBC/OdbcFunctions.hsc: add support for different String
encodings. New functions to marshal to/from various encodings
(Latin1, UTF8, UTF16), and bind/get functions changed to use
these.
- Daniel Corson
* binary data with postgres
= Bug fixes =
- Alistair Bayley:
* Database/ODBC/OdbcFunctions.hsc: fix bug in
mkBindBufferForStorable for Nothing (null) case: pass -1
(sqlNullData) as value size.
* Database/ODBC/OdbcFunctions.hsc: use sqlNullData in
bindParamString Nothing case, rather than -1. A bit more
descriptive.
* Database/ODBC/Enumerator.lhs: store bind buffers in stmt object,
so we retain reference to them for lifetime of statement. Destroy
with statement (well, lose the reference). Should fix bind errors
found by Jason Dagit.
* Database/ODBC/Enumerator.lhs: Oracle only supports two transaction
isolation levels (like Postgres). String output bind parameters
have max size 8000 (we use 7999 because module OdbcFunctions adds
one to the size).
* Database/ODBC/OdbcFunctions.hsc: string parameters have different
SQL data types when binding columns (SQL_CHAR) and parameters
(SQL_VARCHAR). Oracle only supports two transaction isolation
levels.
* Database/PostgreSQL/PGFunctions.lhs: fix byteaUnesc and add
byteaEsc.
= Refactoring =
- Jason Dagit:
* update urls in cabal file
- Alistair Bayley:
* Takusen.cabal: fixed QuickCheck version spec.
* Takusen.cabal: bump version to 0.8.6.
* Database/ODBC/OdbcFunctions.hsc: makeUtcTimeBuffer: pass struct
size as both buffer size and data size in call to mkBindBuffer.
* Database/ODBC/OdbcFunctions.hsc: mkBindBufferForStorable calls
mkBindBuffer (reduces duplicated code).
* Database/ODBC/Enumerator.lhs: add instance for EnvInquiry to
change session char encoding.
* Database/ODBC/Enumerator.lhs: add comments to beginTransaction.
* Database/Util.lhs: print "printArrayContents", to match function
name.
* Database/PostgreSQL/Enumerator.lhs: expose byteaEsc and
byteaUnesc.
= New tests and changes to tests =
- Alistair Bayley:
* Database/ODBC/Test/OdbcFunctions.lhs: added testBindDouble to test
Nothing (null) case for Storable types.
* Database/ODBC/Test/OdbcFunctions.lhs: split transaction isolation
level tests so there is one test per level. String marshaling
tests use 0x10FF40 as max unicode codepoint, because that keeps
Oracle happy. Max size for String parameter buffer is 7999 (SQL
Server restriction). Don't bury errors raised by tests; print, but
continue. Fix fixture cleanup bug in testBindOutput (dropped wrong
procedure).
* Database/ODBC/Test/Enumerator.lhs: suffix xxx to bindOutput test
expected value.
* Database/PostgreSQL/Test/PGFunctions.lhs: tests for UUID.
* Database/PostgreSQL/Test/Enumerator.lhs: round-trip test for UUID.
* Database/PostgreSQL/Test/PGFunctions.lhs: test select of UUID
value.
* Database/ODBC/Test/OdbcFunctions.lhs: set client charset to UTF8
when postgresql.
* Database/Test/Enumerator.lhs: add order-bys to tests with unions.
* Database/PostgreSQL/Test/PGFunctions.lhs: add order-by to union
test.
* Database/ODBC/Test/Enumerator.lhs: set char encoding to
UTF8. inquire InfoDbmsName already returns lowercase.
* Takusen.cabal: add random to build-depends for tests.
* Database/Test/Enumerator.lhs: make test fixtures more friendly to
MS Access.
* Database/ODBC/Test/OdbcFunctions.lhs: tests modified for MS Access
(date tests), plus use new char-encoding aware functions.
* Database/ODBC/Test/Enumerator.lhs: change boundary dates test to
not use union. Union seems to make MS Access choke.
* Database/PostgreSQL/Test/PGFunctions.lhs: add tests for bytea,
including QuickCheck roundtrip.
* Database/PostgreSQL/Test/Enumerator.lhs: add bytea bind and select
test.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100731/2fed75a7/attachment.html
More information about the Haskell-Cafe
mailing list