diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9eedd3bef..56107db32 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,26 +3,42 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/)
+## [12.6.0] Stable Release
+### Changed
+- Adjusted PreparedStatement cache, so it's cleared before every execute [#2272](https://github.com/microsoft/mssql-jdbc/pull/2272)
+- Updated azure-identity, azure-security-keyvault-keys, bouncycastle, and msal library versions [#2279](https://github.com/microsoft/mssql-jdbc/pull/2279)
+- Changed `socketTimeout` to ensure it's always less than or equal to `loginTimeout` [#2280](https://github.com/microsoft/mssql-jdbc/pull/2280)
+- Change BulkCopy behavior from serializing and deserializing Timestamp objects, to using the objects directly [#2291](https://github.com/microsoft/mssql-jdbc/pull/2291)
+
+### Fixed issues
+- Fixed the way ActivityID was defined and used to be more in line with the behavior of other Microsoft drivers [#2254](https://github.com/microsoft/mssql-jdbc/pull/2254)
+- - Fixed missing getters and setters for `useBulkCopyForBatchInsert` [#2277](https://github.com/microsoft/mssql-jdbc/pull/2277)
+- - Fixed an issue where, when using the TOP qualifier in a query, the driver returns an error concerning ParameterMetadata [#2287](https://github.com/microsoft/mssql-jdbc/pull/2287)
+- Fixed an issue where insert statements with missing whitespace worked correctly in regular cases, but not when using batch inserts [#2290](https://github.com/microsoft/mssql-jdbc/pull/2290)
+- Fixed timezone not being properly applied to Timestamps when inserted using batch insert with bulkcopy [#2291](https://github.com/microsoft/mssql-jdbc/pull/2291)
+- Fixed locks in IOBuffer to prevent deadlock issues that could arise [#2295](https://github.com/microsoft/mssql-jdbc/pull/2295)
+- Fixed an issue where, when an exception has no cause, the exception itself is passed along instead, preventing it from being lost [#2300](https://github.com/microsoft/mssql-jdbc/pull/2300)
+
## [12.5.0] Preview Release
### Added
- Added connection property, `useDefaultJaasConfig`, to allow Kerberos authentication without any additional external configuration [#2147](https://github.com/microsoft/mssql-jdbc/pull/2147)
-- Allow calling of stored procedures directly, simplifying the procedure and improving performance [#2154](https://github.com/microsoft/mssql-jdbc/pull/2154)
+- Allow calling of stored procedures directly through use of new connection property `useFlexibleCallableStatements`, simplifying the procedure and improving performance [#2154](https://github.com/microsoft/mssql-jdbc/pull/2154)
- Added connection property, `useDefaultGSSCredential`, to allow the driver to create GSSCredential on behalf of a user using Native GSS-API for Kerberos authentication [#2177](https://github.com/microsoft/mssql-jdbc/pull/2177)
- Added Java 21 support [#2229](https://github.com/microsoft/mssql-jdbc/pull/2229)
-- Added connection property, `calcBigDecimalScale`, to allow the driver to calculate scale and percision from Big Decimal inputs [#2248](https://github.com/microsoft/mssql-jdbc/pull/2248)
+- Added connection property, `calcBigDecimalScale`, to allow the driver to calculate scale and precision from Big Decimal inputs [#2248](https://github.com/microsoft/mssql-jdbc/pull/2248)
- Added a new named logger for connection open retries and idle connection resiliency reconnects [#2250](https://github.com/microsoft/mssql-jdbc/pull/2250)
### Changed
-- Changed how IBM JDK is checked for to prevent issues with OSGi environments [#2150](https://github.com/microsoft/mssql-jdbc/pull/2150)
-- Updated azure-security-keyvault-keys, bouncycastle, and h2 library versions [#2162](https://github.com/microsoft/mssql-jdbc/pull/2162)[#2182](https://github.com/microsoft/mssql-jdbc/pull/2182)[#2249](https://github.com/microsoft/mssql-jdbc/pull/2249)
+- Changed how IBM JDK is checked for to prevent issues with OSGi environments [#2150](https://github.com/microsoft/mssql-jdbc/pull/2150)[#2209](https://github.com/microsoft/mssql-jdbc/pull/2209)
+- Updated azure-security-keyvault-keys, bouncycastle, and h2 library versions. As well, Upgraded from `bcprov-jdk15on` and `bcpkix-jdk15on` to `bcprov-jdk18on` and `bcpkix-jdk18on` as the former is no longer being updated [#2162](https://github.com/microsoft/mssql-jdbc/pull/2162)[#2182](https://github.com/microsoft/mssql-jdbc/pull/2182)[#2249](https://github.com/microsoft/mssql-jdbc/pull/2249)
- Changes to bulkcopy to allow for performance improvements when loading a large number of timestamps [#2194](https://github.com/microsoft/mssql-jdbc/pull/2194)
- Added additional errors that should translate to RMFAIL [#2201](https://github.com/microsoft/mssql-jdbc/pull/2201)
-- Properly synchronize all calls to MSAL, preventing the driver from making extra calls and providing unneccessary dialogues [#2218](https://github.com/microsoft/mssql-jdbc/pull/2218)
-- Changed driver retry behavior to retry the correct number of times based on connectRetryCount [#2247](https://github.com/microsoft/mssql-jdbc/pull/2247)
+- Properly synchronize all calls to MSAL, preventing the driver from making extra calls and providing unnecessary dialogues [#2218](https://github.com/microsoft/mssql-jdbc/pull/2218)
+- Changed driver retry behavior to retry the correct number of times based on connectRetryCount. These changes were later reverted prior to the 12.6.0 release [#2247](https://github.com/microsoft/mssql-jdbc/pull/2247)[#2267](https://github.com/microsoft/mssql-jdbc/pull/2267)
### Fixed issues
- Fix to ignore irrelevant computed columns during bulk insert [#1562](https://github.com/microsoft/mssql-jdbc/pull/1562)
-- Fixed an issue where signature was not properly verfied when using Java Key Store, as well as adding a new API to sign column master key metadata (and return generated signature) for use with Java Key Store and Azure Key Vault [#2160](https://github.com/microsoft/mssql-jdbc/pull/2160)
+- Fixed an issue where signature was not properly verified when using Java Key Store, as well as adding a new API to sign column master key metadata (and return generated signature) for use with Java Key Store and Azure Key Vault [#2160](https://github.com/microsoft/mssql-jdbc/pull/2160)
- Fixed an issue where a null SQLState was returned when trying to convert a date to a long [#2185](https://github.com/microsoft/mssql-jdbc/pull/2185)
- Fixed an issue where schemaPattern was not properly being escaped in SQLServerDatabaseMetadata [#2195](https://github.com/microsoft/mssql-jdbc/pull/2195)
- Fixes getObject()'s erroneous conversion of DateTimeOffset to LocalDateTime [#2204](https://github.com/microsoft/mssql-jdbc/pull/2204)
diff --git a/README.md b/README.md
index 6befca937..4f3f01687 100644
--- a/README.md
+++ b/README.md
@@ -81,7 +81,7 @@ We're now on the Maven Central Repository. Add the following to your POM file to
com.microsoft.sqlserver
mssql-jdbc
- 12.4.1.jre11
+ 12.6.0.jre11
```
The driver can be downloaded from [Microsoft](https://aka.ms/downloadmssqljdbc). For driver version 12.1.0 and greater, please use the jre11 version when using Java 11 or greater, and the jre8 version when using Java 8.
@@ -92,7 +92,7 @@ To get the latest version of the driver, add the following to your POM file:
com.microsoft.sqlserver
mssql-jdbc
- 12.4.1.jre11
+ 12.6.0.jre11
```
@@ -106,7 +106,7 @@ This project has following dependencies:
Compile Time:
- `com.azure:azure-security-keyvault-keys` : Microsoft Azure Client Library For KeyVault Keys (optional)
- `com.azure:azure-identity` : Microsoft Azure Client Library For Identity (optional)
- - `org.bouncycastle:bcprov-jdk15on` : Bouncy Castle Provider for Always Encrypted with secure enclaves feature with JAVA 8 only (optional)
+ - `org.bouncycastle:bcprov-jdk18on` : Bouncy Castle Provider for Always Encrypted with secure enclaves feature with JAVA 8 only (optional)
- `com.google.code.gson:gson` : Gson for Always Encrypted with secure enclaves feature (optional)
Test Time:
@@ -127,7 +127,7 @@ Projects that require either of the two features need to explicitly declare the
com.microsoft.sqlserver
mssql-jdbc
- 12.4.1.jre11
+ 12.6.0.jre11
compile
@@ -145,7 +145,7 @@ Projects that require either of the two features need to explicitly declare the
com.microsoft.sqlserver
mssql-jdbc
- 12.4.1.jre11
+ 12.6.0.jre11
compile
@@ -172,7 +172,7 @@ When setting 'useFmtOnly' property to 'true' for establishing a connection or cr
com.microsoft.sqlserver
mssql-jdbc
- 12.4.1.jre11
+ 12.6.0.jre11
@@ -212,7 +212,7 @@ Preview releases happen approximately monthly between stable releases. This give
You can see what is going into a future release by monitoring [Milestones](https://github.com/Microsoft/mssql-jdbc/milestones) in the repository.
### Version conventions
-Starting with 6.0, stable versions have an even minor version. For example, 6.0, 6.2, 6.4, 7.0, 7.2, 7.4, 8.2, 8.4, 9.2, 9.4, 10.2, 11.2, 12.2, 12.4. Preview versions have an odd minor version. For example, 6.1, 6.3, 6.5, 7.1, 7.3, 8.1, 9.1, 10.1, 11.1, 12.1, 12.3, and so on.
+Starting with 6.0, stable versions have an even minor version. For example, 6.0, 6.2, 6.4, 7.0, 7.2, 7.4, 8.2, 8.4, 9.2, 9.4, 10.2, 11.2, 12.2, 12.4, 12.6. Preview versions have an odd minor version. For example, 6.1, 6.3, 6.5, 7.1, 7.3, 8.1, 9.1, 10.1, 11.1, 12.1, 12.3, 12.5, and so on.
## Contributors
Special thanks to everyone who has contributed to the project.
diff --git a/build.gradle b/build.gradle
index 310dcfc35..eb40c3013 100644
--- a/build.gradle
+++ b/build.gradle
@@ -11,8 +11,8 @@
apply plugin: 'java'
-version = '12.5.0'
-def releaseExt = '-preview'
+version = '12.6.0'
+def releaseExt = ''
def jreVersion = ""
def testOutputDir = file("build/classes/java/test")
def archivesBaseName = 'mssql-jdbc'
diff --git a/mssql-jdbc_auth_LICENSE b/mssql-jdbc_auth_LICENSE
index e5f8973c2..eddb50467 100644
--- a/mssql-jdbc_auth_LICENSE
+++ b/mssql-jdbc_auth_LICENSE
@@ -1,5 +1,5 @@
MICROSOFT SOFTWARE LICENSE TERMS
-MICROSOFT JDBC DRIVER 12.4.0 FOR SQL SERVER
+MICROSOFT JDBC DRIVER 12.6.0 FOR SQL SERVER
These license terms are an agreement between you and Microsoft Corporation (or one of its affiliates). They apply to the software named above and any Microsoft services or software updates (except to the extent such services or updates are accompanied by new or additional terms, in which case those different terms apply prospectively and do not alter your or Microsoft’s rights relating to pre-updated software or services). IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE RIGHTS BELOW. BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS.
diff --git a/pom.xml b/pom.xml
index a87128a09..60d749593 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.microsoft.sqlserver
mssql-jdbc
- 12.5.0
+ 12.6.0
jar
Microsoft JDBC Driver for SQL Server
@@ -51,7 +51,7 @@
Default testing enabled with SQL Server 2019 (SQLv15) -->
xSQLv12,xSQLv15,NTLM,MSI,reqExternalSetup,clientCertAuth,fedAuth,kerberos
- -preview
+
6.0.0
4.7.3
diff --git a/src/main/java/com/microsoft/sqlserver/jdbc/SQLJdbcVersion.java b/src/main/java/com/microsoft/sqlserver/jdbc/SQLJdbcVersion.java
index 8adbb06fc..78b11810d 100644
--- a/src/main/java/com/microsoft/sqlserver/jdbc/SQLJdbcVersion.java
+++ b/src/main/java/com/microsoft/sqlserver/jdbc/SQLJdbcVersion.java
@@ -7,7 +7,7 @@
final class SQLJdbcVersion {
static final int MAJOR = 12;
- static final int MINOR = 5;
+ static final int MINOR = 6;
static final int PATCH = 0;
static final int BUILD = 0;
/*
@@ -15,7 +15,7 @@ final class SQLJdbcVersion {
* 1. Set to "-preview" for preview release.
* 2. Set to "" (empty String) for official release.
*/
- static final String RELEASE_EXT = "-preview";
+ static final String RELEASE_EXT = "";
private SQLJdbcVersion() {
throw new UnsupportedOperationException(SQLServerException.getErrString("R_notSupported"));
diff --git a/src/samples/adaptive/pom.xml b/src/samples/adaptive/pom.xml
index 96e2be9a0..f1ce6c7d4 100644
--- a/src/samples/adaptive/pom.xml
+++ b/src/samples/adaptive/pom.xml
@@ -15,7 +15,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/alwaysencrypted/pom.xml b/src/samples/alwaysencrypted/pom.xml
index 294d4b419..b26a55e0c 100644
--- a/src/samples/alwaysencrypted/pom.xml
+++ b/src/samples/alwaysencrypted/pom.xml
@@ -15,7 +15,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/azureactivedirectoryauthentication/pom.xml b/src/samples/azureactivedirectoryauthentication/pom.xml
index 518da61a7..d704cd96f 100644
--- a/src/samples/azureactivedirectoryauthentication/pom.xml
+++ b/src/samples/azureactivedirectoryauthentication/pom.xml
@@ -14,7 +14,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/connections/pom.xml b/src/samples/connections/pom.xml
index 209697c3c..7bc8fd947 100644
--- a/src/samples/connections/pom.xml
+++ b/src/samples/connections/pom.xml
@@ -14,7 +14,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/constrained/pom.xml b/src/samples/constrained/pom.xml
index c2cc82ae6..9518b2c53 100644
--- a/src/samples/constrained/pom.xml
+++ b/src/samples/constrained/pom.xml
@@ -16,7 +16,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/dataclassification/pom.xml b/src/samples/dataclassification/pom.xml
index 74ba22bb0..f4f9f7ce4 100644
--- a/src/samples/dataclassification/pom.xml
+++ b/src/samples/dataclassification/pom.xml
@@ -16,7 +16,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/datatypes/pom.xml b/src/samples/datatypes/pom.xml
index 148d73819..264dbb745 100644
--- a/src/samples/datatypes/pom.xml
+++ b/src/samples/datatypes/pom.xml
@@ -15,7 +15,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/resultsets/pom.xml b/src/samples/resultsets/pom.xml
index d466f5e75..979b36010 100644
--- a/src/samples/resultsets/pom.xml
+++ b/src/samples/resultsets/pom.xml
@@ -14,7 +14,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11
diff --git a/src/samples/sparse/pom.xml b/src/samples/sparse/pom.xml
index e6e3dd4de..9df693086 100644
--- a/src/samples/sparse/pom.xml
+++ b/src/samples/sparse/pom.xml
@@ -14,7 +14,7 @@
com.microsoft.sqlserver
mssql-jdbc
- 12.4.0.jre11
+ 12.6.0.jre11