Perl DBD::ODBC 1.40_3 released to the CPAN

I've just uploaded the DBD::ODBC 1.40_3 development release to the CPAN. If all goes well this will be the official 1.41 release in a weeks time.

Changes in DBD::ODBC 1.40_3 October 8 2012

[BUG FIXES]

  • Oops, changes to some rt tests fail when not run to MS SQL Server and they should not be run for other drivers - there was a double done_testing call.

[CHANGE IN BEHAVIOUR]

  • As I warned literally years ago DBD::ODBC's private function DescribeCol has been removed. You can use DBI's statement attributes like NAME, PRECISION etc, instead. All test code has been changed to remove calls to DescribeCol and GetTypeInfo.

[MISCELLANEOUS]

  • New example sqlserver_supplementary_chrs.pl added which shows that in MS SQL Server 2012 you can now store unicode characters over 0xFFFF (ones which are surrogate pairs).
  • More documentation for odbc_out_connect_string.

head2 Changes in DBD::ODBC 1.40_2 September 6 2012

[BUG FIXES]

  • Fixed rt 78838 - bind_param does not correctly stringify blessed objects when connected to MS SQL Server
  • Fix issue in dbd_bind_ph where if you passed a sql type and were also attempting to change from in to out or vice versa or increasing the size of an output bound param it would not spot this error.
  • Allowed the test cases to spot DB2 driver as libXXXdb2.

[MISCELLANEOUS]

  • New test cases added for some rts.
  • Added Test::NoWarnings to some tests where it was missing.

head2 Changes in DBD::ODBC 1.40_1 September 4 2012

[BUG FIXES]

  • Debian/Ubuntu have moved unixODBC into /usr/lib/i386-linux-gnu so look in this dir for unixODBC as well - thanks to Meastro for finding.
  • Fixed rt 78838. I had a sequence point error which is only seen with some compilers as it is sometimes optimized out. It could cause DBD::ODBC to omit adding the UID/PWD to the end of the connection string when using DSN=. Thanks to Zsolt Cserna for spotting it and to ilmari and Leon for explaining it to me.
  • Fixed rt 79397. Output bound parameters may be incorrectly bound if changed after bind_param_inout is called. If you start with an undef bound param and change it to a defined string/number less than 28 characters before calling execute the original undef will probably be bound. Thanks to runrig on perl monks for providing an example.

[CHANGE IN BEHAVIOUR]

  • If you attempt to bind an rv without amagic DBD::ODBC will now croak - related to rt 78838.