Releases: streetsidesoftware/cspell
v5.12.1
v5.12.0
Changes
added `SpellingDictionaryCollection` to `cspell-lib` exports (#1815)
added SpellingDictionaryCollection
to cspell-lib
exports (#1815)
I'm trying to use cspell-lib
in our application (we're building a spell-checker service in node - more details here: #1813).
I need to use the SpellingDictionaryCollection
class to be able to add custom dictionaries, but this class is not exported from cspell-lib
. The only way to import it is:
import { SpellingDictionaryCollection } from 'cspell-lib/dist/SpellingDictionary';
But this isn't a good solution as it causes Webpack builds to fail because of non-static require()
calls.
This PR adds SpellingDictionaryCollection
to packages/cspell-lib/src/index.ts
exports, thanks to this it can be imported this way:
import { SpellingDictionaryCollection } from 'cspell-lib';
docs: Add example of patterns configuration (#1814)
docs: Add example of patterns configuration (#1814)
I think it will be nice if there is an example to setup patterns
setting is the docs.
It may help us understand the structure of the patterns
from a quick glance.
PS. The patterns used in the example is from the test file of this feature (https://github.com/streetsidesoftware/cspell/blob/5375c73e47/packages/cspell-lib/src/Settings/patterns.test.ts#L7-L18)
Features
feat: Add support for `.gitignore` (#1823)
feat: Add support for .gitignore
(#1823)
Fix: #1319
On the command line:
--gitignore Ignore files matching glob patterns found in .gitignore files.
--gitignore-root <path> Prevent searching for .gitignore files past root.
Config:
cspell.json
/**
* Tells the spell checker to load `.gitignore` files and skip files that match the globs in the `.gitignore` files found.
* @default false
*/
useGitignore?: boolean;
/**
* Tells the spell checker to searching for `.gitignore` files when it reaches a matching root.
*/
gitignoreRoot?: FsPath | FsPath[];
Fixes
fix: Update gitignore README and normalize roots (#1832)
fix: Update gitignore README and normalize roots (#1832)
- fix: Update
cspell-gitignore
README - fix: normalize
gitignoreRoot
s
Testing
Maintenance
ci: Adjust test workflow for more caching. (#1834)
ci: Adjust test workflow for more caching. (#1834)
ci: Workflow Bot -- Update ALL Dependencies (main) (#1835)
ci: Workflow Bot -- Update ALL Dependencies (main) (#1835)
integration-tests/package-lock.json | 69 +++++++++--------
packages/cspell-bundled-dicts/package-lock.json | 36 ++++-----
packages/cspell-dynamic-loader/package-lock.json | 69 +++++++++--------
packages/cspell-gitignore/package-lock.json | 6 +-
packages/cspell-json-reporter/package-lock.json | 69 +++++++++--------
packages/cspell-tools/package-lock.json | 18 ++---
packages/cspell-trie/package-lock.json | 6 +-
packages/cspell/package-lock.json | 64 ++++++++--------
test-packages/cspell-cli/package-lock.json | 68 +++++++++--------
test-packages/test-cspell-glob/package-lock.json | 6 +-
test-packages/test-cspell-io/package-lock.json | 6 +-
.../test-cspell-lib-webpack/package-lock.json | 48 ++++++------
test-packages/test-cspell-lib/package-lock.json | 48 ++++++------
test-packages/test-cspell-tools/package-lock.json | 86 ++++++++++++----------
test-packages/test-cspell/package-lock.json | 68 +++++++++--------
15 files changed, 365 insertions(+), 302 deletions(-)
v5.12.0-alpha.0
Changes
added `SpellingDictionaryCollection` to `cspell-lib` exports (#1815)
added SpellingDictionaryCollection
to cspell-lib
exports (#1815)
I'm trying to use cspell-lib
in our application (we're building a spell-checker service in node - more details here: #1813).
I need to use the SpellingDictionaryCollection
class to be able to add custom dictionaries, but this class is not exported from cspell-lib
. The only way to import it is:
import { SpellingDictionaryCollection } from 'cspell-lib/dist/SpellingDictionary';
But this isn't a good solution as it causes Webpack builds to fail because of non-static require()
calls.
This PR adds SpellingDictionaryCollection
to packages/cspell-lib/src/index.ts
exports, thanks to this it can be imported this way:
import { SpellingDictionaryCollection } from 'cspell-lib';
docs: Add example of patterns configuration (#1814)
docs: Add example of patterns configuration (#1814)
I think it will be nice if there is an example to setup patterns
setting is the docs.
It may help us understand the structure of the patterns
from a quick glance.
PS. The patterns used in the example is from the test file of this feature (https://github.com/streetsidesoftware/cspell/blob/5375c73e47/packages/cspell-lib/src/Settings/patterns.test.ts#L7-L18)
ci: Workflow Bot -- Update ALL Dependencies (main) (#1835)
ci: Workflow Bot -- Update ALL Dependencies (main) (#1835)
integration-tests/package-lock.json | 69 +++++++++--------
packages/cspell-bundled-dicts/package-lock.json | 36 ++++-----
packages/cspell-dynamic-loader/package-lock.json | 69 +++++++++--------
packages/cspell-gitignore/package-lock.json | 6 +-
packages/cspell-json-reporter/package-lock.json | 69 +++++++++--------
packages/cspell-tools/package-lock.json | 18 ++---
packages/cspell-trie/package-lock.json | 6 +-
packages/cspell/package-lock.json | 64 ++++++++--------
test-packages/cspell-cli/package-lock.json | 68 +++++++++--------
test-packages/test-cspell-glob/package-lock.json | 6 +-
test-packages/test-cspell-io/package-lock.json | 6 +-
.../test-cspell-lib-webpack/package-lock.json | 48 ++++++------
test-packages/test-cspell-lib/package-lock.json | 48 ++++++------
test-packages/test-cspell-tools/package-lock.json | 86 ++++++++++++----------
test-packages/test-cspell/package-lock.json | 68 +++++++++--------
15 files changed, 365 insertions(+), 302 deletions(-)
Features
feat: Add support for `.gitignore` (#1823)
feat: Add support for .gitignore
(#1823)
Fix: #1319
On the command line:
--gitignore Ignore files matching glob patterns found in .gitignore files.
--gitignore-root <path> Prevent searching for .gitignore files past root.
Config:
cspell.json
/**
* Tells the spell checker to load `.gitignore` files and skip files that match the globs in the `.gitignore` files found.
* @default false
*/
useGitignore?: boolean;
/**
* Tells the spell checker to searching for `.gitignore` files when it reaches a matching root.
*/
gitignoreRoot?: FsPath | FsPath[];
Fixes
fix: Update gitignore README and normalize roots (#1832)
fix: Update gitignore README and normalize roots (#1832)
- fix: Update
cspell-gitignore
README - fix: normalize
gitignoreRoot
s
Testing
Maintenance
v5.11.1
v5.11.0
Features
➤ feat: add --cache option to lint only changed files (#1763)
Special thanks to @mad-gooze
This PR adds three new cli options:
--cache
that enables caching lint results on disk--cache-location <path>
that sets cache file location--cache-strategy <metadata|content>
that sets cache strategy used by file-entry-cache
Cache implementation is heavily inspired by ESLint
Fixes
➤ fix: Reduce the cost of regexp exclusions (#1800)
Fix #1775
➤ dev: Do not spell check generated files. (#1779)
➤ fix: Update Python dictionary (#1778)
➤ fix: Ensure cli-reporter displays the correct message. (#1774)
- Use a substitution function to ensure Issue formatting is correct.
➤ fix: Display filenames instead of URI's (#1773)
When issues are displayed, show the filename, not the URI.
➤ dev: change the integration report format (#1749)
Make it more robust against minor changes.
The goal is to keep diffs small.
➤ fix: make sure issue.uri
is actually a URI. (#1746)
➤ fix: Patterns - only add u
if no flags are given (#1745)
u
is over 100x slower to run. So, only add it if no flags are given.
Logic: If they know enough to add flags, then they can add u
if needed.
Related to: #1699
➤ dev: Update German dictionary in integration tests (#1744)
➤ fix: Improve Patterns and RegExp handling (#1743)
➤ fix: Allow config file version to be a number. (#1730)
fix: #1729
Testing
➤ test: Update suggest-en.test.ts (#1798)
Make the timeout a bit longer because this test is flaky on Mac / Windows runners.
Maintenance
➤ chore: Add Dependabot for Gemfile (#1801)
I didn't add it to the 4 branch, because the site can only run off one branch
➤ Update issues-lock.yml (#1797)
➤ ci: Update Gemfile.lock (#1799)
➤ ci: Update cspell-action.yml (#1782)
➤ ci: Try to speed up npm install
(#1768)
➤ ci: cache integration test repo files (#1769)
➤ ci: Use only the integration commit for the repo hash (#1767)
➤ ci: Use individual integration test repo info for hash (#1766)
➤ ci: Try caching integration test runs to avoid repeat runs. (#1764)
Only run an integration test if something has changed.
➤ ci: Support Manual Integration Test runs (#1762)
Add caching for builds
➤ ci:Revert - Disable Coveralls (#1732)
When the Coveralls API is back online, land this diff.
"ci: Disable Coveralls - their API has been down for a couple of days. (#1731)"
This reverts commit 9922998.
➤ ci: Disable Coveralls - their API has been down for a couple of days. (#1731)
v5.10.1
v5.10.0
Changes
➤ Have a backup timer (#1707)
Related to #1704
➤ Explicitly import hrtime
from process
(#1705)
to allow Browserify/Webpack to work.
Related to #1704
➤ feat: Custom reporters support (#1643)
Hi Jason!
This PR proposes custom reporters support which allows implementing things like #21 in the future.
It definitly needs better documentation and tests, could you review it and discuss if you find the way I implemented is ok?
Fixes
➤ fix: Roll back update to @cspell/dict-en-gb@2
(#1712)
Related to #1709
➤ fix: Make dict-en-gb version 2 optional because of license. (#1710)
Related to #1709
➤ fix: Fix accidental promise returned by reporters. (#1702)
➤ refactor: imports of cspell-types
should be type only (#1688)
Where possible, make importing from @cspell/cspell-types
a type
only import.
➤ fix: Delete .pre-commit-hooks.yaml (#1686)
The CSpell mono-repo does not support pre-commit directly. Use cspell-cli: cspell command line that can be used with pre-commit
Maintenance
➤ ci: Improve the development experience (#1683)
v5.9.1
Changes
➤ enable incremental typescript builds (#1671)
TypeScript support incremental build mode which caches build results in filesystem (see here)
Enabling this speeds up npm run build
more than 2x on my machine.
➤ enable eslint cache (#1672)
This greatly speeds up eslint for files which were not modified.
➤ docs: Rebuild docs (#1670)
➤ test: add a test case for issue #1626 (#1627)
➤ docs: Add Hunspell to the list of packages. (#1622)
➤ docs: lint - clean up README (#1623)
Fixes
➤ Revert "test: fix github-actions (#1665)" (#1666)
This reverts commit 0d3091f.
➤ fix: Change the suggestions to not include ties by default. (#1678)
➤ fix: drop need for iconv-lite and iterable-to-stream (#1677)
- iterable-to-stream - was replaced with the now built-in method.
- iconv-lite - was never really needed since all files are expected to be in
utf-8
. - Bump the minimum version of not to the original LTS version 12.13.0
- cspell-io - remove unused async line reader and other unused async functions.
NOTE: This might be a breaking change for any external party that depends upon cspell-io.
➤ fix: Fix suggestions when working with case aware dictionaries. (#1674)
➤ fix: sample more often to make sure the suggest stops on time. (#1669)
➤ fix: Support Suggestion timeouts (#1668)
➤ dev: Test time limits on suggestions. (#1664)
➤ test: fix github-actions (#1665)
Related to:
➤ dev: Move CheckFailed Error into its own file. (#1663)
➤ dev: fix add a timeout to generating suggestions. (#1662)
➤ dev: Refactor Suggestion Collector into its own file. (#1657)
➤ dev: Make sure natural compound words are tested. (#1645)
➤ dev: Some fixes to the A* Suggestion generator (#1644)
➤ fix: Fix version number reference (#1640)
Fixes: #1638
➤ fix: Perf - Try improving suggestion performance. (#1639)
➤ fix: Upgrade British English dictionary to v2. (#1633)
➤ dev: Update Dutch Dictionary (#1624)
Testing
➤ test: fix github-actions (#1665)
Related to:
Maintenance
➤ ci: Use a standard tsconfig.json
base for all packages. (#1681)
➤ ci: Remove .tsbuildinfo
during clean (#1679)
➤ ci: Use caching to speed up github actions (#1667)