Skip to content

Releases: streetsidesoftware/cspell

v5.12.0-alpha.0

05 Oct 10:51
Compare
Choose a tag to compare
v5.12.0-alpha.0 Pre-release
Pre-release

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: support `--no-gitignore` option (#1833)

fix: support --no-gitignore option (#1833)


fix: Update gitignore README and normalize roots (#1832)

fix: Update gitignore README and normalize roots (#1832)

  • fix: Update cspell-gitignore README
  • fix: normalize gitignoreRoots

dev: Add cspell-gitignore package (#1821)

dev: Add cspell-gitignore package (#1821)


fix: fix home page reference. (#1817)

fix: fix home page reference. (#1817)


dev: Example of spell checking some text (#1816)

dev: Example of spell checking some text (#1816)


Testing

test: improve code coverage (#1824)

test: improve code coverage (#1824)


Maintenance

ci: Adjust test workflow for more caching. (#1834)

ci: Adjust test workflow for more caching. (#1834)


v5.11.1

29 Sep 06:42
Compare
Choose a tag to compare

Changes

Minor cleanup of dependencies.

Fixes

fix: Move `@types` dependencies to dev (#1811)

fix: Move @types dependencies to dev (#1811)


v5.11.0

28 Sep 16:13
Compare
Choose a tag to compare

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: #1776, #1494

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

18 Sep 04:21
Compare
Choose a tag to compare

Changes

Fixes

fix: Use process directly instead of importing it. (#1714)

Fix: #1704

v5.10.0

17 Sep 12:33
Compare
Choose a tag to compare

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

12 Sep 11:37
Compare
Choose a tag to compare

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)

v5.9.0

01 Sep 14:31
Compare
Choose a tag to compare
v5.9.0