mirror of
https://github.com/hwchase17/langchain.git
synced 2025-09-27 22:37:46 +00:00
**Description:** Change the default Neo4j username/password (when not supplied as environment variable or in code) from `None` to `""`. Neo4j has an option to [disable auth](https://neo4j.com/docs/operations-manual/current/configuration/configuration-settings/#config_dbms.security.auth_enabled) which is helpful when developing. When auth is disabled, the username / password through the `neo4j` module should be `""` (ie an empty string). Empty strings get marked as false in `langchain_core.utils.env.get_from_dict_or_env` -- changing this code / behaviour would have a wide impact and is undesirable. In order to both _allow_ access to Neo4j with auth disabled and _not_ impact `langchain_core` this patch is presented. The downside would be that if a user forgets to set NEO4J_USERNAME or NEO4J_PASSWORD they would see an invalid credentials error rather than missing credentials error. This could be mitigated but would result in a less elegant patch! **Issue:** Fix issue where langchain cannot communicate with Neo4j if Neo4j auth is disabled.