|
2 | 2 | All notable changes to this project will be documented in this file. |
3 | 3 |
|
4 | 4 | The format is based on [Keep a Changelog](http://keepachangelog.com/) |
| 5 | +## [13.3.0] Preview Release |
| 6 | + |
| 7 | +### Added |
| 8 | + |
| 9 | +- **Performance logger and callback handling mechanism** [#2706](https://github.com/microsoft/mssql-jdbc/pull/2706) |
| 10 | + **What was added**: Introduced performance logging framework to track critical driver operations such as connection time, prelogin, login, and token acquisition. |
| 11 | + **Who benefits**: Developers and operators monitoring JDBC driver performance. |
| 12 | + **Impact**: Enables visibility into driver-level latencies via com.microsoft.sqlserver.jdbc.PerformanceMetrics.Connection logger and extensible callback infrastructure for future metrics. |
| 13 | + |
| 14 | +- **Test enhancements** [#2712](https://github.com/microsoft/mssql-jdbc/pull/2712) |
| 15 | + **What changed**: Improved unit test coverage for SQLServerConnectionTest, SQLServerDatabaseMetaData and few more classes. |
| 16 | + **Who benefits**: Contributors and maintainers. |
| 17 | + **Impact**: Improves code coverage with junit tests. |
| 18 | + |
| 19 | +### Changed |
| 20 | + |
| 21 | +- **Java 25 (LTS) support and removal of non-LTS versions 22–24** [#2821](https://github.com/microsoft/mssql-jdbc/pull/2821) |
| 22 | + **What changed**: Added official support for Java 25 (LTS) and removed non-LTS Java versions (22–24) from Maven and Gradle build configurations. |
| 23 | + **Who benefits**: Developers aligning builds with long-term supported Java versions. |
| 24 | + **Impact**: Ensures continued compatibility and stability with LTS Java releases; simplifies build maintenance. |
| 25 | + |
| 26 | +### Fixed |
| 27 | + |
| 28 | +- **Bulk insert parsing of isolated quotes in tab-delimited data** [#2795](https://github.com/microsoft/mssql-jdbc/pull/2795) |
| 29 | + **What was fixed**: Resolved IndexOutOfBoundsException caused by incorrect quote state handling during tab-delimited bulk copy operations. |
| 30 | + **Who benefits**: Users performing bulk inserts from tab-delimited data containing isolated quotes. |
| 31 | + **Impact**: Ensures isolated quotes are treated as literal characters; improves parsing reliability and consistency. |
| 32 | + |
| 33 | +- **PreparedStatement INSERT update Count with triggers and multi-Value inserts** [#2817](https://github.com/microsoft/mssql-jdbc/pull/2817) |
| 34 | + **What was fixed**: Corrected inaccurate update counts returned by PreparedStatement for multi-value INSERT statements with triggers. |
| 35 | + **Who benefits**: Developers relying on accurate update counts in batch or trigger-based inserts. |
| 36 | + **Impact**: Ensures consistent and accurate update count behavior across all INSERT execution scenarios. |
| 37 | + |
| 38 | +- **Fix for fatal error handling in DONE tokens** [#2741](https://github.com/microsoft/mssql-jdbc/pull/2741) |
| 39 | + **What was fixed**: Corrected TDS message handling to properly detect and propagate fatal severity (25+) errors. |
| 40 | + **Who benefits**: Applications needing reliable error propagation during critical SQL Server failures. |
| 41 | + **Impact**: Prevents silent failures and ensures robust TDS stream recovery during fatal error conditions. |
| 42 | + |
| 43 | +- **Fix for getParameterMetaData() crash with table-valued parameters** [#2746](https://github.com/microsoft/mssql-jdbc/pull/2746) |
| 44 | + **What was fixed**: Prevented SQLServerException when calling getParameterMetaData() on statements using Table-Valued Parameters (TVPs). |
| 45 | + **Who benefits**: Developers using structured or table-valued parameters. |
| 46 | + **Impact**: Restores correct metadata extraction for TVP parameters, ensuring full JDBC metadata compatibility. |
| 47 | + |
| 48 | +- **supportsIntegrityEnhancementFacility() returns accurate value** [#2828](https://github.com/microsoft/mssql-jdbc/pull/2828) |
| 49 | + **What was fixed**: Corrected DatabaseMetaData.supportsIntegrityEnhancementFacility() to return true for SQL Server. |
| 50 | + **Who benefits**: Applications querying database metadata for integrity constraint support. |
| 51 | + **Impact**: Accurately reports SQL Server’s full support for primary, foreign key, and check constraints. |
| 52 | + |
| 53 | +- **Fix bulk copy for batch insert to support InputStream data** (#2826)(https://github.com/microsoft/mssql-jdbc/pull/2826) |
| 54 | + **What was fixed**: Enabled setBinaryStream() to work correctly with Bulk Copy for Batch Insert into VARBINARY(MAX) columns. |
| 55 | + **Who benefits**: Developers inserting large binary data via streams. |
| 56 | + **Impact**: Prevents “invalid hex format” errors; ensures InputStream-based binary inserts work seamlessly. |
| 57 | + |
| 58 | +- **Addressed failure on Azure Synapse serverless SQL pool caused by the unsupported sp_statistics procedure** [#2839](https://github.com/microsoft/mssql-jdbc/pull/2839) |
| 59 | + **What changed**: Added a try–catch fallback in getIndexInfoAzureDW() to query sys.indexes, sys.index_columns, sys.columns, and sys.tables when sp_statistics is unavailable. |
| 60 | + **Who benefits**: Applications retrieving index metadata from Azure Synapse serverless SQL pool or other environments lacking sp_statistics. |
| 61 | + **Impact**: Ensures reliable metadata retrieval through a sys.indexes fallback, consistent NON_UNIQUE mapping, and aligned behavior with Azure SQL Database. |
| 62 | + |
| 63 | +- **Test cleanup** [#2734](https://github.com/microsoft/mssql-jdbc/pull/2734) |
| 64 | + **What changed**: Updated tests to clean up temporary objects post-execution. |
| 65 | + **Who benefits**: Contributors and maintainers. |
| 66 | + **Impact**: Reduces test flakiness and improves maintainability of the test suite. |
| 67 | + |
| 68 | + |
5 | 69 | ## [13.2.0] Stable Release |
6 | 70 |
|
7 | 71 | ### Changed |
|
0 commit comments