Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/.release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"crates/db2-napi": "1.0.25"
"crates/db2-napi": "1.0.26"
}
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ npm install db2-node
Install from a GitHub release tarball:

```bash
npm install https://github.com/gurungabit/db2-node/releases/download/v1.0.25/db2-node-1.0.25.tgz
npm install https://github.com/gurungabit/db2-node/releases/download/v1.0.26/db2-node-1.0.26.tgz
```

Replace `v1.0.25` and `1.0.25` with the release version you want.
Replace `v1.0.26` and `1.0.26` with the release version you want.

```ts
import { Client } from "db2-node";
Expand Down Expand Up @@ -223,7 +223,7 @@ The deployed docs site lives at `https://db2-node.github.io/`.

## Status

The `1.0.25` release fixes the issues reported in #19–25: mixed/NULL LOB decoding, duplicate result columns, BOOLEAN text bindings, driver error classifications, bundled TLS libraries, and LUW password punctuation. Validation uses Docker Db2 12.1 and 11.5:
The `1.0.26` release writes LOB and XML parameters larger than 32,767 bytes (#31) and completes Db2 LUW replies at the end of the DRDA reply chain, so requests no longer pay fixed 25 ms and 250 ms reply waits. Validation uses Docker Db2 12.1 and 11.5:

- Rust and Node integration suites are green
- TLS behavior is covered in both Rust and Node tests
Expand Down
11 changes: 11 additions & 0 deletions crates/db2-napi/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,17 @@

All notable changes to this package will be documented in this file.

## [1.0.26](https://github.com/gurungabit/db2-node/compare/v1.0.25...v1.0.26) (2026-10-05)

db2-node 1.0.26 fixes LOB parameters that were silently not written and removes the fixed reply waits that dominated request latency on Db2 LUW.

- Write parameters bound to CLOB, BLOB and DBCLOB columns declared larger than 32,767 bytes. They are now sent as DRDA LOB placeholders with EXTDTA, instead of oversized VARCHAR descriptors that Db2 LUW rejected while the statement reported `rowCount: 0`. Direct and prepared execution, batches, CALL, NULL and empty values are covered. A rejected descriptor (DSCINVRM) now raises an error instead of reporting success. (#31; PR #32)
- Accept XML parameters larger than 32,767 bytes on Db2 LUW. (PR #32)
- Pass `Buffer`, typed array and `ArrayBuffer` parameters to the native addon without per-byte conversion. A 50 MB BLOB write drops from about 3 s to under 0.5 s and no longer blocks the event loop. (PR #32)
- Complete Db2 LUW replies at the end of the DRDA reply chain. The driver no longer waits `frameDrainTimeout` (25 ms) after each reply, or 250 ms before fetching results with LOB columns. On Db2 12.1, `VALUES 1` drops from about 30 ms to 0.5 ms and a LOB SELECT from about 285 ms to 1 ms. `frameDrainTimeout` now applies only to Db2 for z/OS. (PR #34)

Validation covers Db2 LUW 12.1 and 11.5, TLS on 12.1, and the full Rust and Node suites run through a DRDA protocol audit. No live z/OS server was available; z/OS keeps its existing reply handling.

## [1.0.25](https://github.com/gurungabit/db2-node/compare/v1.0.24...v1.0.25) (2026-10-04)

db2-node 1.0.25 resolves seven reported issues across LOB decoding, JavaScript query APIs, bundled TLS libraries, and credential encoding.
Expand Down
6 changes: 3 additions & 3 deletions crates/db2-napi/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Pure Rust DB2 driver for Node.js using the DRDA wire protocol directly. No IBM C

## Status

`1.0.25` is the current release. It fixes the issues reported in #19–25: mixed/NULL LOB values, duplicate result columns, BOOLEAN text parameters, driver diagnostics, bundled TLS libraries, and LUW passwords containing punctuation. Validation covers Docker Db2 12.1 and 11.5, with verified TLS on 12.1. The package supports parameterized queries, prepared statements, transactions, connection pooling, TLS, `ibm_db` compatibility entry points, and the existing Db2 for z/OS paths. No live z/OS server was tested for this release.
`1.0.26` is the current release. It writes LOB and XML parameters larger than 32,767 bytes (#31), passes binary parameters without per-byte conversion, and completes Db2 LUW replies at the end of the DRDA reply chain instead of waiting on fixed timers. Validation covers Docker Db2 12.1 and 11.5, with verified TLS on 12.1. The package supports parameterized queries, prepared statements, transactions, connection pooling, TLS, `ibm_db` compatibility entry points, and the existing Db2 for z/OS paths. No live z/OS server was tested for this release.

## Install

Expand All @@ -15,10 +15,10 @@ npm install db2-node
You can also install the npm-packed artifact from a GitHub release:

```bash
npm install https://github.com/gurungabit/db2-node/releases/download/v1.0.25/db2-node-1.0.25.tgz
npm install https://github.com/gurungabit/db2-node/releases/download/v1.0.26/db2-node-1.0.26.tgz
```

Replace `v1.0.25` and `1.0.25` with the release version you want.
Replace `v1.0.26` and `1.0.26` with the release version you want.

Prebuilt native binaries ship for supported platforms — no Rust toolchain needed:

Expand Down
4 changes: 2 additions & 2 deletions crates/db2-napi/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion crates/db2-napi/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "db2-node",
"version": "1.0.25",
"version": "1.0.26",
"description": "Zero-dependency DB2 driver for Node.js, built with pure Rust",
"main": "index.cjs",
"types": "types.d.ts",
Expand Down
Loading