|
1030 | 1030 | - update jdbc.rst to fix dependency artifact ID mismatch (#2976) |
1031 | 1031 | - **rust**: add ADBC_SNOWFLAKE_GO_LIB_DIR requirement (#2984) |
1032 | 1032 | - **rust**: add protobuf requirement (#2964) |
| 1033 | + |
| 1034 | +## ADBC Libraries 20 (2025-09-09) |
| 1035 | + |
| 1036 | +### Versions |
| 1037 | + |
| 1038 | +- C/C++/GLib/Go/Python/Ruby: 1.8.0 |
| 1039 | +- C#: 0.20.0 |
| 1040 | +- Java: 0.20.0 |
| 1041 | +- R: 0.20.0 |
| 1042 | +- Rust: 0.20.0 |
| 1043 | + |
| 1044 | +### Breaking Changes |
| 1045 | + |
| 1046 | +- ⚠️ **rust**: not to mark some enums as `non_exhaustive` (#3245) |
| 1047 | +- ⚠️ **rust/core**: move the driver_manager feature to the new adbc_driver_manager package (#3197) |
| 1048 | +- ⚠️ **rust/core**: move the ffi related stuff to the new adbc_ffi package (#3381) |
| 1049 | +- ⚠️ **rust/driver/datafusion**: update to datafusion 48 (#3167) |
| 1050 | + |
| 1051 | +### New Features |
| 1052 | + |
| 1053 | +- **c/driver/postgresql**: bind arrow.json to JSON (#3333) |
| 1054 | +- **c/driver/sqlite, python/adbc_driver_manager**: bind params by name (#3362) |
| 1055 | +- **c/driver_manager**: don't ignore invalid manifests (#3399) |
| 1056 | +- **c/driver_manager**: improve error reporting for manifests (#3386) |
| 1057 | +- **c/driver_manager, rust/driver_manager**: add manifest version check (#3393) |
| 1058 | +- **c/driver_manager, rust/driver_manager**: handle virtual environments in driver manager (#3320) |
| 1059 | +- **csharp/src**: Add support for adding and configuring OTel exporters (#2949) |
| 1060 | +- **csharp/src/Apache.Arrow.Adbc/Tracing**: allow ActivitySource tags to be set from TracingConnection (#3218) |
| 1061 | +- **csharp/src/Drivers**: update drivers to .NET 8 (#3120) |
| 1062 | +- **csharp/src/Drivers/Apache**: Add compression support for Spark, Impala & Hive Http Connection (#3127) |
| 1063 | +- **csharp/src/Drivers/Apache**: Enabled Standard protocol for Spark and used SASL transport with basic auth (#3380) |
| 1064 | +- **csharp/src/Drivers/Apache**: Implement protocol fallback mechanism to support old server version of Spark & Hive (#3312) |
| 1065 | +- **csharp/src/Drivers/Apache**: Implement self signed ssl certificate validation for Spark, Impala & Hive (#3224) |
| 1066 | +- **csharp/src/Drivers/Apache**: add env variable config override for databricks (#3304) |
| 1067 | +- **csharp/src/Drivers/Apache**: add support for Statement.Cancel (#3302) |
| 1068 | +- **csharp/src/Drivers/BigQuery**: Enhanced tracing and large resultset improvements (#3022) |
| 1069 | +- **csharp/src/Drivers/Databricks**: Add W3C trace context (#3082) |
| 1070 | +- **csharp/src/Drivers/Databricks**: Fix EnablePkFk (#3098) |
| 1071 | +- **csharp/src/Drivers/Databricks**: Fix StatementTimeoutTest (#3133) |
| 1072 | +- **csharp/src/Drivers/Databricks**: Move DescribeTableExtended to version negotiator (#3137) |
| 1073 | +- **csharp/src/Drivers/Databricks**: Remove redundant CloseOperation for GetColumnsAsync (#3132) |
| 1074 | +- **csharp/src/Drivers/Databricks**: Remove redundant closeoperation (#3093) |
| 1075 | +- **csharp/src/Drivers/Databricks**: Use ArrowSchema for Response Schema (#3140) |
| 1076 | +- **csharp/test/Drivers/Databricks**: Add mandatory token exchange (#3192) |
| 1077 | +- **csharp/test/Drivers/Databricks**: Enable RunAsync option in TExecuteStatementReq (#3171) |
| 1078 | +- **csharp/test/Drivers/Databricks**: Support token refresh to extend connection lifetime (#3177) |
| 1079 | +- **glib**: add AdbcStatementGetParameterSchema() bindings (#3118) |
| 1080 | +- **go/adbc**: add GetDriverInfo helper (#3239) |
| 1081 | +- **go/adbc**: add IngestStream helper for one-call ingestion and add TestIngestStream (#3150) |
| 1082 | +- **go/adbc/driver/bigquery**: Add "adbc.bigquery.sql.location" param (#3280) |
| 1083 | +- **go/adbc/driver/bigquery**: error if we lack readSessionUser (#3297) |
| 1084 | +- **go/adbc/driver/bigquery**: support service account impersonation (#3174) |
| 1085 | +- **go/adbc/driver/snowflake**: Enable PAT and WIF auth (#3366) |
| 1086 | +- **go/adbc/sqldriver**: handle timestamp/time.Time values for input (#3109) |
| 1087 | +- **java/driver/jni**: enable new load flags (#3373) |
| 1088 | +- **java/driver/jni**: implement parameter binding (#3370) |
| 1089 | +- **java/driver/jni**: pass through all initial params (#3372) |
| 1090 | +- **ruby**: don't use adbc-arrow-glib (#3221) |
| 1091 | +- **rust/core**: add function to load driver manifests (#3099) |
| 1092 | +- **rust/driver/snowflake**: add `pat` and `wif` auth types (#3376) |
| 1093 | + |
| 1094 | +### Bugfixes |
| 1095 | + |
| 1096 | +- **c/driver_manager**: add `drivers` subdir in search paths (#3375) |
| 1097 | +- **c/driver_manager**: fix expected `;` for musl arch (#3105) |
| 1098 | +- **c/driver_manager**: modify SYSTEM path behavior on macOS (#3250) |
| 1099 | +- **c/driver_manager**: rename `ADBC_CONFIG_PATH` to `ADBC_DRIVER_PATH` (#3379) |
| 1100 | +- **c/driver_manager**: use Driver.entrypoint as per docs (#3242) |
| 1101 | +- **c/driver_manager, rust/driver_manager**: establish standard platform tuples (#3313) |
| 1102 | +- **csharp/src/Apache.Arrow.Adbc/C**: Stop trying to unload dynamic libraries (#3291) |
| 1103 | +- **csharp/src/Drivers**: Fix cloud fetch cancel/timeout mechnism (#3285) |
| 1104 | +- **csharp/src/Drivers/Apache**: generate type-consistent empty result for GetColumnsExtended query (#3096) |
| 1105 | +- **csharp/src/Drivers/Apache/Hive2**: Remove unnecessary CloseOperation in Statement.Dispose when query is metadata query (#3189) |
| 1106 | +- **csharp/src/Drivers/Apache/Hive2**: add check to see if operation is already closed (#3301) |
| 1107 | +- **csharp/src/Drivers/Apache/Spark**: fix column metadata index offset for Spark standard (#3392) |
| 1108 | +- **csharp/src/Drivers/BigQuery**: Adjust default dataset id (#3187) |
| 1109 | +- **csharp/src/Drivers/BigQuery**: Include try/catch for InvalidOperationException in ReadRowsStream (#3361) |
| 1110 | +- **csharp/src/Drivers/BigQuery**: Modify ReadChunk behavior (#3323) |
| 1111 | +- **csharp/src/Drivers/BigQuery**: add details for retried error message (#3244) |
| 1112 | +- **csharp/src/Drivers/Databricks**: Add another fallback check of GetColumnsExtendedAsync (#3219) |
| 1113 | +- **csharp/src/Drivers/Databricks**: Add instructions about driver config setup (#3367) |
| 1114 | +- **csharp/src/Drivers/Databricks**: Change fallback check of Databricks.GetColumnsExtendedAsync (#3121) |
| 1115 | +- **csharp/src/Drivers/Databricks**: Correct DatabricksCompositeReader and StatusPoller to Stop/Dispose Appropriately (#3217) |
| 1116 | +- **csharp/src/Drivers/Databricks**: DatabricksCompositeReader unit tests (#3265) |
| 1117 | +- **csharp/src/Drivers/Databricks**: Fix Databricks readme (#3365) |
| 1118 | +- **csharp/src/Drivers/Databricks**: Fix null pointer exception (#3261) |
| 1119 | +- **csharp/src/Drivers/Databricks**: PECO-2562 Use "default" schema in open session request (#3359) |
| 1120 | +- **csharp/src/Drivers/Databricks**: Reader Refactors (#3254) |
| 1121 | +- **csharp/src/Drivers/Databricks**: Set GetObjectsPatternsRequireLowerCase true (#3131) |
| 1122 | +- **csharp/src/Drivers/Databricks**: Set enable_run_async_thrift default true (#3232) |
| 1123 | +- **csharp/src/Drivers/Databricks**: Set the SqlState of the exception in RetryHttpHandler (#3092) |
| 1124 | +- **csharp/src/Drivers/Databricks**: Use default result persistence mode (#3203) |
| 1125 | +- **csharp/src/Drivers/Databricks**: [PECO-2396] Fix timestamp for dbr 6.6 - Set timestamp configuration on OpenSessionReq (#3327) |
| 1126 | +- **csharp/src/Drivers/Databricks**: correct tracing instrumentation for assembly name and version (#3170) |
| 1127 | +- **csharp/src/Drivers/Databricks**: fix CloudFetchResultFetcher initial results processing logic (#3097) |
| 1128 | +- **csharp/test/Drivers**: Fix databricks tests (#3358) |
| 1129 | +- **csharp/test/Drivers/Databricks**: Change the default QueryTimeoutSeconds to 3 hours (#3175) |
| 1130 | +- **csharp/test/Drivers/Databricks**: Enrich RetryHttpHandler with other status codes (#3186) |
| 1131 | +- **csharp/test/Drivers/Databricks**: Fix Pkfk Testcase (#3193) |
| 1132 | +- **csharp/test/Drivers/Databricks**: Run token exchange in a background task (#3188) |
| 1133 | +- **go/adbc**: Forward SQLSTATE and vendor code (#2801) |
| 1134 | +- **go/adbc**: changing the location of FlightSQLDriverInit function (#3079) |
| 1135 | +- **go/adbc/driver/bigquery**: accept old auth option value (#3317) |
| 1136 | +- **go/adbc/driver/bigquery**: fix parsing repeated records with nested fields (#3240) |
| 1137 | +- **go/adbc/driver/bigquery**: fix timestamp arrow type to use micro seconds (#3364) |
| 1138 | +- **go/adbc/driver/snowflake**: fix unit tests (#3377) |
| 1139 | +- **go/adbc/drivermgr**: properly vendor toml++ (#3138) |
| 1140 | +- **go/adbc/pkg**: Run make regenerate to keep generated code in sync with templates (#3202) |
| 1141 | +- **go/adbc/pkg**: add PowerShell option to run when executing in a Windows-based ADO pipeline (#3124) |
| 1142 | +- **java/driver/jni**: update AdbcDriverFactory metadata (#3348) |
| 1143 | +- **python/adbc_driver_bigquery**: correct string value of credential enum (#3091) |
| 1144 | +- **python/adbc_driver_manager**: handle empty params in executemany (#3332) |
| 1145 | +- **python/adbc_driver_manager**: mark calls with nogil (#3321) |
| 1146 | +- **rust/core**: fix build errror on windows and enable ci for windows (#3148) |
| 1147 | +- **rust/driver_manager**: modify SYSTEM path behavior on macOS (#3252) |
| 1148 | + |
| 1149 | +### Documentation Improvements |
| 1150 | + |
| 1151 | +- Fix pip install command for arrow-adbc-nightlies (#3222) |
| 1152 | +- add Snowflake and BigQuery drivers to Python API reference (#3088) |
| 1153 | +- add docs for driver manifests (#3176) |
| 1154 | +- clarify relationship specification.rst to adbc.h (#3226) |
| 1155 | +- consistent use of `pushd` instead of `cd` in the contributing guide (#3089) |
| 1156 | +- fix invalid link in snowflake docs (#3246) |
| 1157 | +- fix safari rendering in manifest_load.mmd diagram (#3391) |
| 1158 | +- fix typo in python/adbc_driver_postgresql/README.md (#3194) |
| 1159 | +- generate driver status from README badges (#2890) |
| 1160 | +- improve go docs by adding a readme (#3204) |
| 1161 | +- link to AdbcDriverInitFunc in how_manager.rst (#3227) |
| 1162 | +- minor edits for first version of driver manager docs (#3180) |
| 1163 | +- minor improvements to driver_manifests.rst (#3394) |
| 1164 | +- organize Documentation steps of CONTRIBUTING.md (#3100) |
| 1165 | +- rework driver manager references across docs (#3388) |
| 1166 | +- **rust/core**: add simple usage of Driver Manager (#3086) |
0 commit comments