Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Neo4J Php Client Laravel Package

laudis/neo4j-php-client

Typed Neo4j PHP client/driver with Bolt and Neo4j (auto-routed) support. Intuitive, extensible API with easy configuration, built with input from the official driver team and validated via Neo4j Testkit for reliability.

View on GitHub
Deep Wiki
Context7
3.6.0

New features

  • Session::executeQuery(): runs Cypher with automatic retry on transient errors (Bolt & Basic sessions).
  • Session::close(): explicit session teardown added to the public session API.
  • Bolt telemetry: sends telemetry messages on Bolt 5.4; can be toggled with DriverConfiguration::withTelemetryEnabled().
  • Temporal types: improved Bolt datetime encoding with UTC patch negotiation for Neo4j 4.3–5.0.

Bug fixes & reliability

  • Improved transaction handling in failure states (rollback when required).
  • Fixed connection-pool semaphore timing: post semaphores after connection release, not before.
  • First proper Bolt message pipelining for better protocol efficiency.

Driver / TestKit / internals

  • Expanded TestKit backend support (telemetry stubs, datatype decoding, executeQuery handler).
  • Removed unused symfony/polyfill-php80 dependency (PHP 8.1+ already required).
  • Added scheduled Aura Free integration CI workflow.
3.5.0

New features

  • Multi-driver failover (#282): If a configured host is unreachable, the client automatically retries on alternative drivers in the pool. Useful for multi-host / HA setups.
  • SummarizedResult::list() (#301): Materializes all remaining rows without rewinding the iterator (avoids duplicating rows already consumed via next()). On Bolt, uses efficient PULL n=-1 fetch-all semantics.

Bug fixes & reliability

  • Aura routing & TLS (#298 / #309): Fixes Aura ROUTE handling, TLS peer name verification, and legacy Aura Free database name inference. Also optimizes connection verification.
  • Disconnect & transaction timeout handling: Server disconnects and transaction timeouts are surfaced correctly instead of being swallowed. Transactions defer BEGIN until the first run/commit/rollback. Pull logic now distinguishes server errors (rethrown) from connection errors (may return partial results).

Driver / TestKit / internals

  • Expanded TestKit result iteration support (ResultList, ResultPeek, ResultSingleOptional, etc.): mostly internal/TestKit-facing, but improves Neo4j driver spec compliance.
  • Dependency bump: minimum stefanak-michal/bolt raised to ^7.4.0 (#308). Psalm/static-analysis fixes (including a new stubs/sysvsem.php).

Documentation

  • README cleanup: removed stale HTTP/HTTPS driver examples and outdated batching/requirements sections.

Tests added

  • MultiDriverFailoverTest, ClientExceptionHandlingTest, ClientSessionExceptionHandlingTest, SummarizedResultListTest, plus TypeCaster updates.
3.4.3
  • Neo4j Vector type : Support for the Neo4j Vector type in the client (#290).
  • Connection receive timeout: Implements the connection receive-timeout configuration hint; connection/timeout failures are no longer misclassified as NotALeader, and related error handling is tightened in Bolt paths and testkit (#279).
  • Relationship element IDs: Correct handling of relationship start/end node elementIds (#292).
  • Type casting: TypeCaster improvements: toBool fix, other optimizations, InvalidTypeCast / tryToString refactor, plus unit tests (#296).
  • Testkit: CI validation of the pinned testkit commit to avoid version drift (#288).
3.4.2

Small hotfix where the driver halts if the server agent is not provided by the server autentication response

3.4.1
  • Added support for forcing socket type via driver configuration (with SocketType enum)
  • Implemented GetServerInfo handler with routing validation fixes
  • Improved connection and session cleanup (discarding unconsumed results on close)
  • Enhanced driver-level query execution and Testkit coverage
  • Fixed Testkit bookmark handling and session execution edge cases
3.4.0
  • fixed all the basic-query testkit tests
  • removed broken cc link
  • Improve exception taxonomy (SSLConnectionxceiptn, TimeoutException)
  • Improve element ID support
  • Add proper feature suport for testkit
3.3.0

What’s new: TestKit integration, CI/CD speed boosts, connection-pooling improvements, and the removal of legacy HTTP support.

Re-enabled Features

  • Full TestKit backend for running Neo4j integration tests in CI.

Improvements CI/CD optimizations

  • Enabled Docker image caching and Composer caching across workflows.
  • Refactored GitHub Actions to speed up builds (docker build cache, service-restart logic, down-flags, etc.).
  • Flexible logging tests to support Neo4j 4.x & 5.x.

Connection pooling

  • Simplify acquiring and reusing Bolt connections for better performance and resource usage.

Bug Fixes

  • Uncovered by testkit: Resolved failures in ResultSummary, authentication, bookmarks, authentication and timeout management.
  • Neo4jConnectionPool: Fixed advertised address and routing logic.

⚠️ Breaking Changes

📚 Miscellaneous

  • Minor typo fixes
  • object-model cleanup
3.2.0

Features

  • Integrated PSR LoggerInterface for enhanced logging.
  • Improved error handling in connection and connectivity verification.
  • Updated to Bolt version 7.1.4.
  • Addressed PHP 8.4 deprecations.

CI/Testing

  • Updated test environments to PHP 8.3.
3.1.3
  • optimised ci to use docker compose instead of github service containers
  • fix critical bug #232 where a single backslash crashes the driver
3.1.2

What's Changed

Full Changelog: https://github.com/neo4j-php/neo4j-php-client/compare/3.1.1...3.1.2

3.1.1
  • Added support for Bolt 5.1 and 5.2
  • Fixed a bug with SSL hostname being incorrect
  • Fixed a bug where the cache limit goes over the max float value in PHP
3.1.0
  • Fix CI
  • Upgraded Bolt version to v7
  • Fixed bug in address name resolution
  • Improved usage of Bolt messages
  • Upgrade PHP to 8.1
  • Improve extension requirements in composer.json
3.0.6

Fixed some typing issues Fixed correct passing of driver configuration in client and client builder

2.8.2
  • Fixed bug in the connection pooling algorithm
  • enforced session config propagation internally
  • improved testing
2.8.3
  • Fixed a bug when using php 8.2
3.0.0
  • improved typing
  • correct overloading of certain methods
  • bugfix when running a failed query on a transaction
  • bugix when using the HTTP formatted in neo4j version 5
  • fixed regression in uri implementation
  • fixed bolt factory for version 5
  • upgraded bolt library
  • moved to PHP 8.0
  • simplified configuration model
  • use server states from bolt library
3.0.1
  • reworked CI
  • more flexible dependencies for caching libraries
  • correct timezone ID conversion
3.0.2
  • Fixed a bug when dns_get_record returns false
3.0.3
  • Simplified configuration
  • Added functionality for binding transactions and sessions to optimise performance
3.0.4
  • Added a hasDriver method to query the client of an existence of a driver with a given alias
  • Improved CI
  • Updated documentation
3.0.5
  • updated psalm and introduced a baseline
  • removed deprecated dependencies in #183
2.8.1
  • correctly passed bookmarks when using basic formatter
  • correctly fetch next results when working with fetch size
2.8.0
  • Implemented connection resolver with PHP implementation or SysVSem
  • Implemented graceful driver fallback
  • Fixed bug with transaction timeout
  • Implemented simple routing cache with default PSR-11 implementation
  • Upgraded DNS resolver to work with HA setups
2.7.0
  • Bookmarks are now automatically handled by the Session class
  • The Bolt library has been updated to the latest version, which includes major memory performance increases
  • Some basic bugfixes to make tests work more consistently between different environments
2.6.1

Fixed bugs when working with results in neo4j 3.5

2.6.0
  • Added full JOLT support
  • Fixed bug when trying to dump an unconsumed result
  • Improved stability and connection management by maintaining neo4j server state in connection
  • Improved exception handling
  • Small bug fixes and code maintenance improvements
2.5.2
  • Added HTTP Jolt protocol for OGM improvements in Neo4j
  • Fixed bug in neo4j 3.5 result set
2.5.1

Fixed a regression when working with Neo4J 3.5 to enforce proper result consumption

2.5.0

New features:

  • Added keyby, pluck and toArrayRecursive methods on sequences
  • Added DateTimeZoneId
  • Added automatic conversion Bolt Type Parameters to immediately be used in Cypher

Performance Increases:

  • The driver now understands the fetch sizes based on session configuration
  • The results of the driver are now all lazily evaluated
  • The driver now utilizes the Sockets extension if it is installed.

Bugfixes

  • Properly forwarded transaction timeout information to the server
  • Basic documentation and housekeeping bugfixes
  • Fixed a new authentication propagation bug in neo4j scheme
2.4.4

Fixed a bug in the authentication logic when working with the neo4j scheme.

2.4.3

Fixed read error AuraDB Free

2.4.2

Fixed bug when working with clusters with SSL and AuraDB

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
calmfox/watch-sylius
damienfern/grpc-symfony-bundle
atoolo/index-bundle
atoolo/genai-bundle
coprotoai/laravel-ticket
davidjln/llm-carbon-bundle
cryonighter/valid-request-bundle
coolms/taxonomy-bundle
coolms/field-bundle
articulate-orm/symfony
aaix/laravel-tall-architect
ephoto/akeneo-connector
emmanuelballery/eb-plantumlbundle
emielburgman/symfony-visitor-beacon
emielburgman/symfony-visit-storage
emielburgman/symfony-security-headers
emielburgman/symfony-log-viewer
emarref/xdebug-bundle
emarref/pubnub-bundle
elriseio/finance-money-bundle