# @neo4j-cypher/language-support

## 0.0.0-canary-20260709085737

### Major Changes

- 19ffd9d: First alpha release of the new Neo4j's Cypher Language Support, including syntax highlighting, auto-completion and linting as features

### Minor Changes

- ed65ef3: Fixes handling of negative positions and syntaxchecker-exceptions
- 1caab0c: Upgrades formatter from V1 -> V2
- 4b0ee37: New interface for formatQuery, support maxColumn option

### Patch Changes

- bccf518: Fixes signature help bug with arguments that include a default value
- 8ec797d: Updates semantic error worker to use given cypher version
- e92d8c7: Corrects bug with semantic analysis and List of non-numeric types
- 1b971aa: adding support for :play command
- 2e72ac8: Adds errors for undeclared procedures / functions
- 3661e9d: Fixes database completions for CREATE ALIAS commands
- 7aa9c3a: Adds hints to the error when using a procedure/function where the other would be appropriate
- 20b31b6: Fix formatting of dynamic labels
- 2be5469: Updates grammar and semantic analysis to version 2025.01.0
- c065d85: Updated grammar and semantic analysis to version 2025.08
- 08f94af: adding auto-completion for :auto
- 245fb6a: Automatically opens autocompletions after "YIELD "
- bffbb19: Fix comment, QPP and pattern bugs in v1 formatter
- 0e457d6: Updates grammar and semantic analysis to 2026.03
- 84a12fc: Added parsing of CYPHER <version> and CYPHER <optionName> = <value>
- b1e686e: adding support for the help command
- b76af58: Fixes bug in signature help of functions nested inside procedure calls
- 8eacddd: Adds support for labels/reltypes in symbol table
- 7538cfd: Wires the symbol table into the language support
- 21699b7: Updates the semantic analysis module to use the antlr parser instead of the javaCC one
- 8cc77c6: Add support for console commands
- b0170f9: Increase path segment completion triggering
- 6866132: Update grammar and semantic analysis to 2026.07
- 68f55d4: Updates parser and semantic analysis to version 2025.02
- 50cc73e: Adds errors when passing an invalid cypher version in query
- 0763d97: Fix bug in formatter when parser performs error recovery
- d329252: Adds deprecation warning tags on deprecated functions/procedures
- 826d922: Add `:style` cmd to command parser
- 02df611: Hide parameter errors when disconnected
- 3a29711: Update grammar and semantic analysis to version 2025.09
- b0e419e: Adds backticking when needed on autocompletions of aliases and database names
- 6d00433: Bugfix for case-insensitivity of built-in functions
- 5ef538d: Solves highlighting bug with multiline constructs embedded in the preparser
- 1f790d0: Adds auto-completion of usernames and roles
- 88fbe63: Modified backtick insertion to only happen when really necessary
- e69ee30: Update grammar and semantic analysis to 2026.06
- 6afc0e3: Adds signature information on auto-completions
- 8760c02: Adds backticking to labels, rel types and property names on auto-completions
- 8e8d7f1: Add vector support to linting
- 22081b0: Adds autocompletions following YIELD in a procedure call
- b9c0e9d: Updates semantic analysis and grammar to 2025.10
- 1e210cb: Moves semantic analysis to a separate worker file
- 039d1c5: Makes the semantic analysis work with partial queries
- 1ef063e: Updates grammar and semantic analysis to version 2025.07
- 88e4930: Fixes backticking of parameters and dbNames/aliases
- 2f8b52d: Schema-based linting when connected: warn on labels and relationship types missing from the database and on relationship patterns that contradict the graph schema's direction (#681), with improved warning readability (#685)
- cd4ab49: Update grammar and semantic analysis to 2026.05
- a790700: Fix issue where syntax highlighting crashes on create constraint query
- 07ac90f: adding semantic validation for missing paramters
- a38255f: Updates grammar and semantic analysis to version 2025.06
- 05663bd: Fixes bug using non language keywords (EXPLAIN, PROFILE, etc) as symbolic names
- c587b81: Fixes bug using console commands as variables or labels
- 3b2faf5: Rewrite global parserWrapper for instantiated CypherLanguageService objects

  Breaking changes for direct consumers of `@neo4j-cypher/language-support`:

  - Removed export: `parserWrapper`. The same `ParsingResult` as `parserWrapper.parse` would yield can still be received by `createParsingResult` in `CypherLanguageService`. Instances of the new CypherLanguageService class provide helpers for linting/highlighting/completions/signature info where parsing is handled internally.
  - Renamed exports: `applySyntaxColouring` → `highlightSyntax`, `syntaxColouringLegend` → `syntaxHighlightingLegend`
  - `autocomplete()`, `lintCypherQuery()`, `highlightSyntax()`, and `getSignatureInfo()` now take an options object as the third parameter instead of positional args

- 5df1435: Updates grammar and semantic analysis to 2026.01
- b988d3b: Solves bug splitting commands which was breaking for queries just containing comments
- 3f8b64f: Fixes bug reporting missing label / rel type when inside opposite pattern
- 043d766: Moves the syntax errors to the semantic analysis web worker
- e5768a6: Adds semantic analysis for procedures and functions
- d77e8a1: Fixes "missing label/rel type" warnings for some special cases
- 62ac442: Add support for sysinfo, welcome, connect, disconnect and server console commands
- 08db455: Fix incorrect completions when identifier overlaps with keyword
- 39b924d: Fixes bug in labels completion
- 25fad16: Fix linting of :play command
- eeb68e5: restructure packages as part of move to pnpm
- 0b2d441: Expand formatter coverage to cover SEARCH, GRAPH TYPE and more. Fixes bugs, for example SHOW ... YIELD formatting bug, and failing to format full query when parsing only fails at the end
- 013e4ff: Adds support for the access-mode console command to the grammar
- 7183c63: Fixes a bug in formatting when using preparser keywords in function/procedure namespaces
- 808aa73: Updates grammar and semantic analysis to 2025.11
- c01b32a: Re-surfaces preparser errors
- 68d92a8: Updates dev artifacts to 2025.12
- bfdc70e: Updates grammar and semantic analysis to 2026.02
- f6d20b2: Adds signature help capabilities to the language support
- ca1bba6: Update grammar and semantic analysis to 2026.04
- 704d1c5: Adds autocompletions for CYPHER <version>
- 17909e3: Improves speed of semantic analysis between 2x and 6x

## 2.0.0-next.34

### Patch Changes

- 2f8b52d: Schema-based linting when connected: warn on labels and relationship types missing from the database and on relationship patterns that contradict the graph schema's direction (#681), with improved warning readability (#685)

## 2.0.0-next.33

### Patch Changes

- 02df611: Hide parameter errors when disconnected
- e69ee30: Update grammar and semantic analysis to 2026.06

## 2.0.0-next.32

### Patch Changes

- cd4ab49: Update grammar and semantic analysis to 2026.05
- 0b2d441: Expand formatter coverage to cover SEARCH, GRAPH TYPE and more. Fixes bugs, for example SHOW ... YIELD formatting bug, and failing to format full query when parsing only fails at the end

## 2.0.0-next.31

### Patch Changes

- 08f94af: adding auto-completion for :auto
- 0763d97: Fix bug in formatter when parser performs error recovery
- 3b2faf5: Rewrite global parserWrapper for instantiated CypherLanguageService objects

  Breaking changes for direct consumers of `@neo4j-cypher/language-support`:

  - Removed export: `parserWrapper`. The same `ParsingResult` as `parserWrapper.parse` would yield can still be received by `createParsingResult` in `CypherLanguageService`. Instances of the new CypherLanguageService class provide helpers for linting/highlighting/completions/signature info where parsing is handled internally.
  - Renamed exports: `applySyntaxColouring` → `highlightSyntax`, `syntaxColouringLegend` → `syntaxHighlightingLegend`
  - `autocomplete()`, `lintCypherQuery()`, `highlightSyntax()`, and `getSignatureInfo()` now take an options object as the third parameter instead of positional args

- ca1bba6: Update grammar and semantic analysis to 2026.04

## 2.0.0-next.30

### Patch Changes

- 0e457d6: Updates grammar and semantic analysis to 2026.03
- b0170f9: Increase path segment completion triggering
- 25fad16: Fix linting of :play command

## 2.0.0-next.29

### Patch Changes

- bfdc70e: Updates grammar and semantic analysis to 2026.02

## 2.0.0-next.28

### Patch Changes

- 5df1435: Updates grammar and semantic analysis to 2026.01

## 2.0.0-next.27

### Patch Changes

- 20b31b6: Fix formatting of dynamic labels
- 68d92a8: Updates dev artifacts to 2025.12

## 2.0.0-next.26

### Patch Changes

- 8e8d7f1: Add vector support to linting
- 808aa73: Updates grammar and semantic analysis to 2025.11

## 2.0.0-next.25

### Patch Changes

- b1e686e: adding support for the help command

## 2.0.0-next.24

### Patch Changes

- 8eacddd: Adds support for labels/reltypes in symbol table
- 3a29711: Update grammar and semantic analysis to version 2025.09
- b9c0e9d: Updates semantic analysis and grammar to 2025.10
- d77e8a1: Fixes "missing label/rel type" warnings for some special cases
- 7183c63: Fixes a bug in formatting when using preparser keywords in function/procedure namespaces

## 2.0.0-next.23

### Patch Changes

- c065d85: Updated grammar and semantic analysis to version 2025.08

## 2.0.0-next.22

### Minor Changes

- ed65ef3: Fixes handling of negative positions and syntaxchecker-exceptions

### Patch Changes

- 7538cfd: Wires the symbol table into the language support
- 039d1c5: Makes the semantic analysis work with partial queries
- 1ef063e: Updates grammar and semantic analysis to version 2025.07
- a38255f: Updates grammar and semantic analysis to version 2025.06

## 2.0.0-next.21

### Minor Changes

- 4b0ee37: New interface for formatQuery, support maxColumn option

## 2.0.0-next.20

### Patch Changes

- 013e4ff: Adds support for the access-mode console command to the grammar

## 2.0.0-next.19

### Patch Changes

- 88e4930: Fixes backticking of parameters and dbNames/aliases
- 5bfdac2: restructure packages as part of move to pnpm

## 2.0.0-next.18

### Patch Changes

- 1b971aa: adding support for :play command
- 07ac90f: adding semantic validation for missing paramters

## 2.0.0-next.17

### Minor Changes

- 1caab0c: Upgrades formatter from V1 -> V2

### Patch Changes

- bffbb19: Fix comment, QPP and pattern bugs in v1 formatter
- 826d922: Add `:style` cmd to command parser

## 2.0.0-next.16

### Patch Changes

- 68f55d4: Updates parser and semantic analysis to version 2025.02
- 6d00433: Bugfix for case-insensitivity of built-in functions
- c01b32a: Re-surfaces preparser errors

## 2.0.0-next.15

### Patch Changes

- 50cc73e: Adds errors when passing an invalid cypher version in query
- 5ef538d: Solves highlighting bug with multiline constructs embedded in the preparser
- b988d3b: Solves bug splitting commands which was breaking for queries just containing comments

## 2.0.0-next.14

### Patch Changes

- 8ec797d: Updates semantic error worker to use given cypher version
- 7aa9c3a: Adds hints to the error when using a procedure/function where the other would be appropriate
- 2be5469: Updates grammar and semantic analysis to version 2025.01.0
- 245fb6a: Automatically opens autocompletions after "YIELD "
- c587b81: Fixes bug using console commands as variables or labels
- 3f8b64f: Fixes bug reporting missing label / rel type when inside opposite pattern
- 043d766: Moves the syntax errors to the semantic analysis web worker
- 704d1c5: Adds autocompletions for CYPHER <version>

## 2.0.0-next.13

### Patch Changes

- 84a12fc: Added parsing of CYPHER <version> and CYPHER <optionName> = <value>
- d329252: Adds deprecation warning tags on deprecated functions/procedures
- b0e419e: Adds backticking when needed on autocompletions of aliases and database names

## 2.0.0-next.12

### Patch Changes

- 88fbe63: Modified backtick insertion to only happen when really necessary
- 22081b0: Adds autocompletions following YIELD in a procedure call
- 62ac442: Add support for sysinfo, welcome, connect, disconnect and server console commands

## 2.0.0-next.11

### Patch Changes

- bccf518: Fixes signature help bug with arguments that include a default value

## 2.0.0-next.10

### Patch Changes

- 8760c02: Adds backticking to labels, rel types and property names on auto-completions

## 2.0.0-next.9

### Patch Changes

- 2e72ac8: Adds errors for undeclared procedures / functions

## 2.0.0-next.8

### Patch Changes

- 05663bd: Fixes bug using non language keywords (EXPLAIN, PROFILE, etc) as symbolic names

## 2.0.0-next.7

### Patch Changes

- 3661e9d: Fixes database completions for CREATE ALIAS commands
- b76af58: Fixes bug in signature help of functions nested inside procedure calls
- 21699b7: Updates the semantic analysis module to use the antlr parser instead of the javaCC one
- 6afc0e3: Adds signature information on auto-completions
- 39b924d: Fixes bug in labels completion

## 2.0.0-next.6

### Patch Changes

- e92d8c7: Corrects bug with semantic analysis and List of non-numeric types

## 2.0.0-next.5

### Patch Changes

- 1f790d0: Adds auto-completion of usernames and roles

## 2.0.0-next.4

### Patch Changes

- Adds semantic analysis for procedures and functions

## 2.0.0-next.3

### Patch Changes

- 8cc77c6: Add support for console commands
- 1e210cb: Moves semantic analysis to a separate worker file
- f6d20b2: Adds signature help capabilities to the language support

## 2.0.0-next.2

### Patch Changes

- 17909e3: Improves speed of semantic analysis between 2x and 6x

## 2.0.0-next.1

### Patch Changes

- a790700: Fix issue where syntax highlighting crashes on create constraint query
- 08db455: Fix incorrect completions when identifier overlaps with keyword

## 2.0.0-next.0

### Major Changes

- 5819f6385: First alpha release of the new Neo4j's Cypher Language Support, including syntax highlighting, auto-completion and linting as features
