Skip to content

Releases: FreeTDS/freetds

FreeTDS 1.4.12 minor release

01 Apr 10:04
Compare
Choose a tag to compare

Improved defncopy utility, mainly fixing quoting.

Added commits

defncopy: Use memory instead of temporary file

Index script is not that huge, just allocate in memory.

defncopy: Fix MS column length for N(VAR)CHAR types

The length from sp_help is in bytes, not in code units.

defncopy: Quote strings and identifiers

Allows to handle weird characters (like spaces) in strings and identifiers.
Handle memory marking in a list to easily free. I plan to move that part of code to common code.

defncopy: Trim spaces around nullable flags

This fix detection of nullable columns for Sybase.

defncopy: Fix for order of index recordset

The order of columns is different between MS and Sybase.
Also separate code in a function, it was too long.

defncopy: Quote key index names

Split index keys considering current column names.
This is more complicated than just split considering separator (command and space, ", ") however it supports weird cases where we have the separator in the middle of a column name.

defncopy: Add test for the applications

Use commands calling programs.
Mainly use tsql to create some table, output definition with defncopy and check definition is as expected.

Caution

Do not use Source code links below, they are auto generated and broken.

FreeTDS 1.4.11 minor release

01 Apr 09:44
Compare
Choose a tag to compare

Added commits

ctlib: Fix crash using ct_command with CS_MORE option

The tds_realloc call was wrong passing the wrong pointer.

Caution

Do not use Source code links below, they are auto generated and broken.

FreeTDS 1.4.10 minor release

21 Jan 22:26
Compare
Choose a tag to compare

Added commits

Do not try to use pthread_cond_timedwait_relative_np on newer Android

API was deprecated, do not use (still available on Apple).
Rename USE_CLOCK_IN_COND to USE_CLOCK_GETTIME_IN_COND to make more clear.
Put check for pthread_cond_timedwait_relative_np in a single place defining a new USE_COND_TIMEDWAIT_RELATIVE if we can use it.
Declare tv variable near gettimeofday to reduce conditional compilation.

Get Windows code page using Windows API

Instead of using setlocale call use GetLocaleInfoA.
This fixes getting Windows code page.
setlocale should return the code page number as first item but it depends on too many settings and sometimes the string does not start with the code page number.
Updated ODBC test to avoid not convertible character; note that now the behaviour is more coherent to Windows driver for this test.

odbc: Return better error for invalid character set

Do not return memory error which is pretty misleading.

tds: Set control method for final OpenSSL BIO

OpenSSL sometimes calls this callback failing if not present.
This fixes #513.

odbc: Fix getting SQL_ATTR_METADATA_ID attribute

Returned wrong field due to typo.

tds: Fix possible issue with 32 bit machines using BCP

The -2 constant should be signed extended to 64 bit and passed to tds_put_int8. This potentially does not happen on 32 bit as the ?: operator would return a size_t (unsigned 32 bit on 32 bit systems).
Force the type to get the correct value.

odbc: Fix type setting

The code was falling through the cases potentially setting wrong types.

tds: Fix conversion from NUMERIC -0 number to integers

The weird number encoding failed to be converted to integers and was detected as overflow.

tls: Fix certificate hostname check for OpenSSL

Update Autoconf to 2.71

Add some compatibility for MacOS.

FreeTDS 1.4 Release

23 Sep 13:31
Compare
Choose a tag to compare

Summary of Changes in release 1.4

User visible (not in a particular order):

  • Fix some numeric conversion checks;
  • Always use Unicode for SSPI allowing not ASCII to work;
  • Improve BCP copy, especially for Sybase;
  • Better error reporting for ICONV failures;
  • Disable TLSv1 by default;
  • ODBC: partial TVP support (missing data at execution);
  • ODBC: support for quoted string in connection string;
  • CT-Library: support large identifiers;
  • CT-Library: report appropriate severity values;
  • apps: datacopy report errors on standard error;
  • pool: use poll instead of select to support more connections.

Implementation:

  • Use more bool type for boolean instead of integer;
  • more macros for ODBC tests to encapsulate some ODBC API.