tag:github.com,2008:https://github.com/neo4j/neo4j-javascript-driver/releasesRelease notes from neo4j-javascript-driver2025-07-16T12:02:51Ztag:github.com,2008:Repository/39573021/6.0.0-alpha012025-07-16T12:36:57Z6.0.0-alpha01<h2>6.0.0-alpha01</h2>
<p><g-emoji class="g-emoji" alias="warning">โ ๏ธ</g-emoji> This is an <strong>experimental</strong> release. It may completely change in the future.<br>
It is not guaranteed to include all breaking changes that will be present in 6.0.0</p>
<p>The main goal of this release is to offer a preview for new driver <code>Vector</code> type.</p>
<h4>โญ New Features</h4>
<hr>
<ul>
<li>Support for Bolt 6.0 and the neo4j Vector type has been added. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1293" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1293/hovercard">#1293</a></li>
<li>ResultTransformers <code>.eager()</code> and <code>.mapped()</code> have been marked stable. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1287" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1287/hovercard">#1287</a></li>
<li><code>GQLStatusObject</code>s have been stabilized as a replacement for the deprecated <code>Notification</code>s. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1285" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1285/hovercard">#1285</a></li>
<li>The GQL-compliant properties <code>gqlStatus</code>, <code>gqlStatusDescription</code>, <code>diagnosticRecord</code>, <code>classification</code> and <code>rawClassification</code> on <code>Neo4jError</code> and <code>GQLError</code> have been stabilized. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1286" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1286/hovercard">#1286</a></li>
</ul>
<h4>๐ Improvements</h4>
<hr>
<ul>
<li>Added documentation to members of GQLError and Neo4jError. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1300" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1300/hovercard">#1300</a></li>
<li>The timeout set with the <code>connectionAcquisitionTimeout</code> config option now covers the whole process of acquiring a connection, including preceding routing calls. This is to align with the behavior of other languages. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1292" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1292/hovercard">#1292</a></li>
<li>Duration <code>toString()</code> format has been updated to align with the stringification in Cypher. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1284" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1284/hovercard">#1284</a></li>
</ul>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>The <code>seconds</code> and <code>nanoseconds</code> properties on <code>Duration</code> objects will now not be neo4j.Integer typed if the driver is configured to return native JS numbers or BigInts. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1265" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1265/hovercard">#1265</a></li>
</ul>
<h4>โ Removals</h4>
<hr>
<ul>
<li><code>severity</code> has been removed from the <code>Notification</code> class. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1289" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1289/hovercard">#1289</a></li>
</ul>
<h4>๐ Deprecation</h4>
<hr>
<ul>
<li>Deprecated <code>Date.toStandardDate()</code> due to the unclear handling of timezones. <code>Date.toStandardDateLocal()</code> is a drop in replacement, but <code>Date.toStandardDateUTC()</code> may be more desireable to some users. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1290" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1290/hovercard">#1290</a></li>
<li>ResultTransformers <code>.eagerResultsTransformer()</code> and <code>.mappedResultsTransformer()</code> have been deprecated. <code>.eager()</code> and <code>.mapped()</code> are drop in replacements. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1287" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1287/hovercard">#1287</a></li>
<li><code>Notification</code>s and related functions have been deprecated in favor of the newly stabilized <code>GQLStatusObject</code>s. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1285" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1285/hovercard">#1285</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.28.12025-02-12T15:54:02Z5.28.1<p>Patch release fixing the new handshake for some potential future bolt protocol versions.</p>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>Fix handshake manifest parsing in preparation of future bolt versions. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1253" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1253/hovercard">#1253</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.28.02025-02-05T12:09:52Z5.28.0<p>Implements caching of home databases, saving significant round trips, primarily for usage against Aura, along with improved error handling, DateTime conversion and a new handshake protocol.</p>
<h4>๐๐ผ Improvements</h4>
<hr>
<ul>
<li>Adds background caching of home databases, saving up to 33% of round trips when the user does not specify a target database. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1235" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1235/hovercard">#1235</a></li>
<li>Implements a new handshake protocol for Bolt, allowing more granular selection of protocol versions in the future. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1243" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1243/hovercard">#1243</a></li>
</ul>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>Improve handling and error communication when the user supplies a circular object in a custom auth token. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1247" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1247/hovercard">#1247</a></li>
<li>Fix the conversion between driver and JavaScript DateTimes when the local timezone has rare minute offsets from UTC. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1238" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1238/hovercard">#1238</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.27.02025-02-05T13:37:11Z5.27.0<p>Takes mTLS authentication out of preview and improves some aspects of documentation.</p>
<h4>โญ New Features</h4>
<hr>
<ul>
<li>Mutual TLS (mTLS) is marked stable and released out of preview <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1237" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1237/hovercard">#1237</a></li>
</ul>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Marks the isUnboundRelationship function as private in documentation. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1234" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1234/hovercard">#1234</a></li>
<li>Corrects the usage of the link tag in documentation, fixing some broken links. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1236" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1236/hovercard">#1236</a></li>
<li>Adds notice regarding <code>CALL {} IN TRANSACTION</code> to executeRead and executeWrite. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1236" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1236/hovercard">#1236</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.26.02025-02-05T13:14:30Z5.26.0<p>Adds GQL compliant fields to the Neo4jError object as a preview feature.</p>
<h4>โญ New Features</h4>
<hr>
<ul>
<li>Added GQL compliant fields to the Neo4jError object. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1225" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1225/hovercard">#1225</a></li>
</ul>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Marked JavaScripts treatment of Integers and Floats as Number as a Feature for testkit. <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1228" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1228/hovercard">#1228</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.25.02024-09-26T09:29:01Z5.25.0<p>Housekeeping only.</p>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Remove DNS caching from testkit browser tests, reducing flakiness <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1224" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1224/hovercard">#1224</a></li>
<li>Improvements on error handling <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1220" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1220/hovercard">#1220</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.24.12024-09-05T11:39:10Z5.24.1<p>Fix critical issue related to connection pool size enforcement. Along with this, other fixes related to connection error treatment are released.</p>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>Remove un-predictable behaviour on connection failure due to multiple notification of same error <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1213" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1213/hovercard">#1213</a></li>
<li>Fix cases where the connection is destroyed on node, but the onclose event is not triggered <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1215" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1215/hovercard">#1215</a></li>
<li>Fix maxConnectionPoolSize verification <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1216" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1216/hovercard">#1216</a></li>
</ul>bigmontztag:github.com,2008:Repository/39573021/5.24.02024-08-29T14:12:46Z5.24.0<p>Added support for the new Schema notification category, and a minor fix to stop Deno tests from failing when run locally</p>
<h4>โญ New Features</h4>
<hr>
<ul>
<li>Added Schema notification category <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1211" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1211/hovercard">#1211</a></li>
</ul>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Move Pool module to core <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1212" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1212/hovercard">#1212</a></li>
<li>Fix to npm test crashing at Deno tests when running test containers <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1210" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1210/hovercard">#1210</a></li>
</ul>MaxAaketag:github.com,2008:Repository/39573021/5.23.02024-07-25T10:26:52Z5.23.0<p>This fix a potential issue in the <code>Notification</code> api.</p>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>Fix <code>Notification.description</code> polyfill from <code>GqlStatusObject</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1205" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1205/hovercard">#1205</a></li>
</ul>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Improve pipelines stability <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1206" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1206/hovercard">#1206</a></li>
</ul>bigmontztag:github.com,2008:Repository/39573021/5.22.02024-06-27T14:20:08Z5.22.0<p>This release introduces preview support to the GQLStatusObject <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1194" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1194/hovercard">#1194</a> along with other ergonomic preview features. This also speeds up the driver shutdown when connections are waiting to be acquired <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1196" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1196/hovercard">#1196</a>, thanks, <a href="https://github.com/CarsonF">CarsonF</a>, for the contribution.</p>
<h4>โญ <g-emoji class="g-emoji" alias="warning">โ ๏ธ</g-emoji> Preview Features</h4>
<hr>
<ul>
<li>Introduce GqlStatusObject support as notifications to <code>ResultSummary</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1194" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1194/hovercard">#1194</a></li>
<li>Introduce <code>AbortSignal</code> to <code>Driver.executeQuery</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1199" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1199/hovercard">1199</a></li>
<li>Introduce <code>resultTransformer.first</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1200" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1200/hovercard">#1200</a></li>
<li>Introduce <code>resultTransformer.summary</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1201" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1201/hovercard">1201</a></li>
<li>Introduce <code>resultTransformers.eager</code> and <code>resultTransformers.mapped</code> <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1202" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1202/hovercard">1202</a></li>
</ul>
<h4>๐ง Fixes</h4>
<hr>
<ul>
<li>Don't prevent NodeJS from closing to run acquisition timeout error <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1196" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1196/hovercard">#1196</a>. Thanks,<a href="https://github.com/CarsonF"> CarsonF</a>.</li>
</ul>
<h4>๐งน Housekeeping</h4>
<hr>
<ul>
<li>Improvements on internal APIs <a href="https://github.com/neo4j/neo4j-javascript-driver/pull/1195" data-hovercard-type="pull_request" data-hovercard-url="/neo4j/neo4j-javascript-driver/pull/1195/hovercard">#1195</a></li>
</ul>bigmontz