Skip to content

Commit a9c714f

Browse files
committed
docs: add v1.4.0 changelog entry
1 parent a6f505c commit a9c714f

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,36 @@
22

33
All notable changes to the **Bison/Flex Language Support** extension will be documented in this file.
44

5+
## [1.4.0] - 2026-03-30
6+
7+
### Added
8+
9+
- **Fix-it hints (Code Actions)** — 22 quick fixes triggered directly from the Problems panel or the lightbulb (`Ctrl+.`), covering the majority of Bison and Flex diagnostics:
10+
- *Bison:* insert `%%`, declare `%token`, insert `%empty`, remove unused token, remove unknown directive, add rule stub, add `%type <todo>` declaration, remove invalid `%start`, add `%start`, close `%{` block, and 4 yacc-compat replacements (`%error-verbose`, `%name-prefix`, `%pure-parser`, `%binary`)
11+
- *Flex:* insert `%%`, define abbreviation stub, remove unused abbreviation, remove unused start condition, remove unknown directive, declare `%x SC_NAME`, remove unused `%option`, remove duplicate `<<EOF>>`, add `%option noyywrap`, close `%{` block, remove inaccessible rule
12+
13+
- **Version-gated diagnostics** — three new settings to target a specific toolchain:
14+
- `bisonFlex.minVersionBison` — suppress checks that require Bison ≥ the given version (e.g. `"3.0"`)
15+
- `bisonFlex.minVersionFlex` — same for Flex
16+
- `bisonFlex.disabledChecks` — array of diagnostic codes to suppress entirely (e.g. `["bison/shift-reduce", "flex/missing-yywrap"]`)
17+
- New `bison/feature-requires-version` diagnostic when a `%define` feature exceeds the configured min version
18+
19+
### Changed
20+
21+
- Every diagnostic now carries a `source` field (`"bison"`, `"bison-yacc-compat"`, or `"flex"`), a `code` slug (e.g. `bison/unused-token`), and a `codeDescription.href` link to the GNU documentation — the code is rendered as a clickable link in the Problems panel
22+
- `DiagnosticTag.Unnecessary` applied to unused tokens, unused rules, unused start conditions, and unused abbreviations (symbols appear greyed-out in the editor)
23+
24+
### Fixed
25+
26+
- **Bison — `DiagnosticTag.Unnecessary` column offset**: `parseTokenNames()` used a relative column index when highlighting unused token names, causing the grey underline to start mid-token instead of at the first character
27+
28+
### CI
29+
30+
- Pipeline now triggers on `dev` branch (push and pull_request) in addition to `main`
31+
- New step: `vsce package` + artifact upload (`extension-vsix`, 30-day retention)
32+
33+
---
34+
535
## [1.1.3] - 2026-03-23
636

737
### Fixed

0 commit comments

Comments
 (0)