Conversation
7e81400 to
368acd2
Compare
a3ae84a to
bc03f15
Compare
7c47fd3 to
a729b73
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release v9.7.0
Release Notes
Details
Features
feat: Substitution Part 4 - enable substitutions during document check (#8630)
feat: Substitution Part 4 - enable substitutions during document check (#8630)
Pull request overview
This PR enables substitution-based text transformations during document spell checking, allowing configured text patterns to be replaced before validation occurs.
Changes:
SubstitutionTransformerto handle both string andMappedTextinputs with source map mergingsettingsToValidateOptionsto explicitly map all validation option fieldsfeat: Substitution Part 3 (#8616)
feat: Substitution Part 3 (#8616)
Pull request overview
This PR updates the SourceMap encoding/handling to use relative span-length pairs (instead of absolute offset pairs) so transformations can be composed more reliably, while updating affected parsers, mappers, and tests across the monorepo.
Changes:
[srcSpanLen, dstSpanLen]segments (with non-linear segment semantics).cspell-liband refactorsTextMap/mapping code and tests to use them.feat: Substitution Part 2 (#8599)
feat: Substitution Part 2 (#8599)
Pull request overview
This pull request is part of a "Substitution" feature series (Part 2), focusing on reorganizing type definitions and adding utility functions for text transformation and source mapping. The main purpose is to consolidate Parser-related types and introduce new mapping utilities needed for the substitution feature.
Changes:
MappedText,Range, andSourceMapfrom root-level exports to the Parser directory structuremapOffsetToSource,mapRangeToSource,mergeSourceMaps) to support text transformation workflowsfeat: Support text substitutions prior to spell checking - part 1 (#8592)
feat: Support text substitutions prior to spell checking - part 1 (#8592)
Text Substitution Support Part 1
Steps towards supporting text substitutions prior to spell checking by introducing a Transform layer (range/mapping + substitution) and wiring it into document validation configuration.
It is not yet added to the normal spell checking flow. That will happen in a later PR.
Changes:
nameand exportRangefor reuse.cspell-libTransform module (TextRange/TextMap/parsedText mapping +SubstitutionTransformer) and update validators/tests to use it.GTrie/GTrieNodefromcspell-trie-libto support efficient substitution matching.Related Issues
Fixes
fix: Support ESLint 10 (#8620)
fix: Support ESLint 10 (#8620)
fix: Prepare to support substitutions (#8584)
fix: Prepare to support substitutions (#8584)
Pull request overview
Adds initial type/schema/plumbing in
cspell-typesandcspell-libto support upcoming “substitutions” configuration fields (definitions + per-document substitutions) throughout config merging, exported field lists, and JSON schema.Changes:
Substitutionstypes and wires them intoCSpellSettingsDefand the public@cspell/cspell-typesindex exports.substitutionDefinitions/substitutionsto config field registries and config merge behavior.fix: cspell-rpc - reduce the size of an RPC result. (#8574)
fix: cspell-rpc - reduce the size of an RPC result. (#8574)
Pull request overview
This PR updates the
cspell-libRPC spell-checking surface to reduce payload sizes by introducing RPC-specific result/issue types and returning a slimmer result fromspellCheckDocumentRPC.Changes:
spellCheckDocumentRPCto return a newSpellCheckFileResultRPCthat omits large fields (notably document text and several result fields).ValidationResultRPC/ValidationIssueRPCand a mapper (toValidationIssueRPC) to reduce issue payload.cspell-rpcclient/server communication test expectations for the new RPC result shape.fix: Add convertToBtrie method to trie-lib (#8562)
fix: Add convertToBtrie method to trie-lib (#8562)
Pull request overview
This PR adds utilities to decode dictionary/trie files (including
.gz) and convert them into the binary.btrieformat, then integrates that conversion into the dictionary bundler plugin so bundled dictionaries can be inlined as (optionally compressed) BTrie data for faster load times.Changes:
decodeFile/convertToBTrieAPIs tocspell-trie-liband export them from the public index.encodeITrieToBTrieconvenience encoder for converting anITriedirectly to BTrie bytes.cspell-dictionary-bundler-pluginto optionally convert/inline dictionaries as.btrie(and optionally gzip them), with updated snapshots/tests.refactor: Use standard dispose (#8559)
refactor: Use standard dispose (#8559)
refactor: Experiment with bundling default dictionaries (#8556)
refactor: Experiment with bundling default dictionaries (#8556)
Pull request overview
This PR experiments with bundling default dictionaries for CSpell, adding infrastructure to bundle dictionary configuration files into JavaScript modules using a custom plugin. The changes introduce a new build pipeline for the cspell-bundled-dicts package but intentionally leave the bundling functionality disabled through configuration.
Changes:
/no-match/pattern)fix: Enable reading dictionaries from cspell-vfs (#8553)
fix: Enable reading dictionaries from cspell-vfs (#8553)
Pull request overview
This PR enables dictionaries bundled into the
cspell-vfs:virtual filesystem to be registered into the runtime VFS so dictionary loading can read them. It adds fixtures/tests to validate the behavior.Changes:
settings.vfsentries into the activeVirtualFSduring config load/merge.cspell-vfs:provider tocspell-io’screateVirtualFS, and exportCSPELL_VFS_PROTOCOL.docValidatortest that loads a bundled config usingcspell-vfs:dictionary content.fix: Work on a bundler for CSpell Dictionaries (#8532)
fix: Work on a bundler for CSpell Dictionaries (#8532)
Pull request overview
This PR introduces a new
@cspell/dictionary-bundler-pluginpackage intended to inline/bundle CSpell dictionary/config assets for consumption across multiple bundlers (Rollup/Vite/Webpack/Rspack/Rolldown/Farm/esbuild), and updates workspace metadata and dependency lockfiles accordingly.Changes:
packages/cspell-dictionary-bundler-pluginpackage with build config (tsdown), TypeScript config, plugin entrypoints, core bundling logic, and Vitest coverage (fixtures + snapshots).fix: Add support for MemVfs to cspell-io (#8543)
fix: Add support for MemVfs to cspell-io (#8543)
Pull request overview
This PR refactors
cspell-io’s VirtualFS internals (exports/import paths) and introduces foundational pieces for an in-memory VirtualFS provider (“MemVfs”), along with new shared error/capability utilities and updated tests.Changes:
src/VirtualFS/index.tsand updates imports across VirtualFS code/tests.errors.ts,capabilities.ts,CFileType.ts,CVfsStat.ts) and updatesWrappedProviderFs.MemVfsProvider) plus basic unit tests.fix: Add mergeConfig (#8539)
fix: Add mergeConfig (#8539)
Pull request overview
Adds a
mergeConfighelper tocspell-typesfor merging multipleCSpellSettingsobjects (including key-specific merge semantics like append/record-merge), and exposes it as part of the public package API.Changes:
mergeConfigimplementation (plus supporting merge helpers) for combining settings objects.fix: stemming rules part 1 (#8527)
fix: stemming rules part 1 (#8527)
Pull request overview
This pull request introduces the first phase of stemming rules support for the CSpell trie library by implementing an affix (prefix/suffix) mutation system. The implementation is based on Hunspell-style affix rules, which allow for word transformations through prefix and suffix mutations.
Changes:
unindentutility for working with template strings in tests and code generationDictionary Updates
fix: Workflow Bot -- Update Dictionaries (main) (#8570)
fix: Workflow Bot -- Update Dictionaries (main) (#8570)
Update Dictionaries (main)
Summary
fix: Workflow Bot -- Update Dictionaries (main) (#8542)
fix: Workflow Bot -- Update Dictionaries (main) (#8542)
Update Dictionaries (main)
Summary
Version Information
v9.7.09.7.0Summary