jest-regex-util
Advanced tools
Changelog
25.2.0
[jest-config]
Support ESM config files with .js
extension (#9573).[jest-runtime]
Override module.createRequire
to return a Jest-compatible require
function (#9469)[jest-haste-map]
[BREAKING] Remove mapper
option (#9581)[*]
Support array of paths for moduleNameMapper
aliases (#9465)[jest-reporters]
Adds ability to pass options to the istanbul-reporter through coverageReporters
(#9572)[jest-runtime]
Require stack when a module cannot be resolved (#9681)[jest-transform]
writeCacheFile
no longer calls fsync
(#9695)[expect]
Handle readonly properties correctly (#9575)[jest-cli]
Set coverageProvider
correctly when provided in config (#9562)[jest-cli]
Allow specifying .cjs
and .mjs
config files by --config
CLI option (#9578)[jest-cli]
Update yargs to fix CLI flag overriding (#9519)[jest-config]
Treat setupFilesAfterEnv
like setupFiles
when normalizing configs against presets (#9495)[jest-config]
Support .mjs
config files on Windows as well (#9558)[jest-config]
Verify rootDir
and all roots
are directories (#9569)[jest-config]
Ensure pattern of replacePosixSep
is a string (#9546)[jest-haste-map]
Fix crash on unix based systems without find (#9579)[jest-jasmine2]
Fix --testNamePattern
matching with concurrent
tests (#9090)[jest-matcher-utils]
Fix diff highlight of symbol-keyed object. (#9499)[@jest/reporters]
Notifications should be fire&forget rather than having a timeout (#9567)[jest-resolve]
Fix module identity preservation with symlinks and browser field resolution (#9511)[jest-resolve]
Do not confuse directories with files (#8912)[jest-resolve]
moduleNameMapper
should take precedence over Node core modules (#9563)[jest-runtime]
Reset isolateModules
if it fails (#9541)[jest-runtime]
Yarn PnP errors displayed to the user (#9681)[jest-snapshot]
Downgrade semver to v6 to support node 8 (#9451)[jest-snapshot]
Properly indent new snapshots in the presences of existing ones (#9523)[jest-transform]
Correct sourcemap behavior for transformed and instrumented code (#9460)[jest-transform]
Allow instrumentation of transformed files with weird file extensions (#9589)[@jest/types]
Make ConfigGlobals
an interface to allow for declaration merging. (#9570)[pretty-format]
Export OldPlugin
type (#9491)[docs]
Warn about unexpected behavior / bug of node-notifier when using the notify
options.[docs]
Grammatical corrections to Async docs page. (#9679)[jest-resolver]
Use resolve
package to implement custom module resolution (#9520)[jest-runtime]
Move execution of setupFiles
to jest-runner
(#9596)[jest-runtime]
Update anchor link in helpers
(#9616)[@jest/reporters]
Remove unused dependencies and type exports (#9462)[website]
Update pictures of reports when matchers fail (#9214)[jest-haste-map]
Reduce number of lstat
calls in node crawler (#9514)Changelog
25.1.0
[babel-plugin-jest-hoist]
Show codeframe on static hoisting issues (#8865)[babel-plugin-jest-hoist]
Add BigInt
to ALLOWED_IDENTIFIERS
(#8382)[babel-preset-jest]
Add @babel/plugin-syntax-bigint
(#8382)[expect]
Add BigInt
support to toBeGreaterThan
, toBeGreaterThanOrEqual
, toBeLessThan
and toBeLessThanOrEqual
(#8382)[expect, jest-matcher-utils]
Display change counts in annotation lines (#9035)[expect, jest-snapshot]
Support custom inline snapshot matchers (#9278)[jest-config]
Throw the full error message and stack when a Jest preset is missing a dependency (#8924)[jest-config]
[BREAKING] Set default display name color based on runner (#8689)[jest-config]
Merge preset globals with project globals (#9027)[jest-config]
Support .cjs
config files (#9291)[jest-config]
[BREAKING] Support .mjs
config files (#9431)[jest-core]
Support reporters as default exports (#9161)[jest-core]
Support --findRelatedTests
paths case insensitivity on Windows (#8961)[jest-diff]
Add options for colors and symbols (#8841)[jest-diff]
[BREAKING] Export as ECMAScript module (#8873)[jest-diff]
Add includeChangeCounts
and rename Indicator
options (#8881)[jest-diff]
Add changeColor
and patchColor
options (#8911)[jest-diff]
Add trailingSpaceFormatter
option and replace cyan with commonColor
(#8927)[jest-diff]
Add firstOrLastEmptyLineReplacement
option and export 3 diffLines
functions (#8955)[jest-environment]
Add optional getVmContext
next to runScript
(#9252 & #9428)[jest-environment-jsdom]
Add fakeTimersLolex
(#8925)[jest-environment-node]
Add fakeTimersLolex
(#8925)[jest-environment-node]
Add queueMicrotask
(#9140)[jest-environment-node]
Implement getVmContext
(#9252 & #9428)[@jest/fake-timers]
Add Lolex as implementation of fake timers (#8897)[jest-get-type]
Add BigInt
support. (#8382)[jest-matcher-utils]
Add BigInt
support to ensureNumbers
ensureActualIsNumber
, ensureExpectedIsNumber
(#8382)[jest-matcher-utils]
Ignore highlighting matched asymmetricMatcher in diffs (#9257)[jest-reporters]
Export utils for path formatting (#9162)[jest-reporters]
Provides global coverage thresholds as watermarks for istanbul (#9416)[jest-runner]
Warn if a worker had to be force exited (#8206)[jest-runtime]
[BREAKING] Do not export ScriptTransformer
- it can be imported from @jest/transform
instead (#9256)[jest-runtime]
Use JestEnvironment.getVmContext
and vm.compileFunction
if available to avoid the module wrapper (#9252 & #9428)[jest-snapshot]
Display change counts in annotation lines (#8982)[jest-snapshot]
[BREAKING] Improve report when the matcher has properties (#9104)[jest-snapshot]
Improve colors when snapshots are updatable (#9132)[jest-snapshot]
Ignore indentation for most serialized objects (#9203)[jest-transform]
Create createTranspilingRequire
function for easy transpiling modules (#9194)[jest-transform]
[BREAKING] Return transformed code as a string, do not wrap in vm.Script
(#9253)[@jest/test-result]
Create method to create empty TestResult
(#8867)[jest-worker]
[BREAKING] Return a promise from end()
, resolving with the information whether workers exited gracefully (#8206)[jest-reporters]
Transform file paths into hyperlinks (#8980)[expect]
Display expectedDiff
more carefully in toBeCloseTo
(#8389)[expect]
Avoid incorrect difference for subset when toMatchObject
fails (#9005)[expect]
Consider all RegExp flags for equality (#9167)[expect]
[BREAKING] Consider primitives different from wrappers instantiated with new
(#9167)[expect]
Prevent maintaining RegExp state between multiple tests (#9289)[expect]
Fix subsetEquality false circular reference detection (#9322)[jest-config]
Use half of the available cores when watchAll
mode is enabled (#9117)[jest-config]
Fix Jest multi project runner still cannot handle exactly one project (#8894)[jest-console]
Add missing console.group
calls to NullConsole
(#9024)[jest-core]
Don't include unref'd timers in --detectOpenHandles results (#8941)[jest-core]
Limit number of workers when creating haste maps in projects (#9259)[jest-diff]
Do not inverse format if line consists of one change (#8903)[jest-diff]
Rename some new options and change their default values (#9077)[jest-environment-node]
Fix TextEncoder.encode
not referencing same global Uint8Array
constructor (#9261)[jest-fake-timers]
getTimerCount
will not include cancelled immediates (#8764)[jest-fake-timers]
Support util.promisify
on setTimeout
(#9180)[jest-jasmine2, jest-circus]
Improve error message format for Node's assert.fail (#9262)[jest-leak-detector]
[BREAKING] Use weak-napi
instead of weak
package (#8686)[jest-mock]
Fix for mockReturnValue overriding mockImplementationOnce (#8398)[jest-reporters]
Make node-notifier an optional dependency (#8918)[jest-reporters]
Make all arguments to methods on BaseReporter
optional (#9159)[jest-resolve]
: Set MODULE_NOT_FOUND as error code when module is not resolved from paths (#8487)[jest-resolve-dependencies]
Handle dynamic dependencies correctly even when using module maps (#9303)[jest-snapshot]
Remove only the added newlines in multiline snapshots (#8859)[jest-snapshot]
Distinguish empty string from external snapshot not written (#8880)[jest-snapshot]
[BREAKING] Distinguish empty string from internal snapshot not written (#8898)[jest-snapshot]
[BREAKING] Remove report
method and throw matcher errors (#9049)[jest-snapshot]
Omit irrelevant received
properties when property matchers fail (#9198)[jest-transform]
Properly cache transformed files across tests (#8890)[jest-transform]
Don't fail the test suite when a generated source map is invalid (#9058)[jest-types]
[BREAKING] Use less null | undefined
in config types (#9200)[jest-util]
Allow querying process.domain (#9136)[pretty-format]
Correctly detect memoized elements (#9196)[pretty-format]
Fix pretty-format to respect displayName on forwardRef (#9422)[*]
[BREAKING] Drop support for Node 6 (#8455)[*]
Add Node 12 to CI (#8411)[*]
[BREAKING] Upgrade to Micromatch v4 (#8852)[babel-plugin-jest-hoist]
[BREAKING] Use ESM exports (#8874)[docs]
Add alias and optional boolean value to coverage
CLI Reference (#8996)[docs]
Fix broken link pointing to legacy JS file in "Snapshot Testing".[docs]
Add setupFilesAfterEnv
and jest.setTimeout
example (#8971)[expect]
Test that toStrictEqual
is equivalent to Node's assert.deepStrictEqual
(#9167)[jest]
[BREAKING] Use ESM exports (#8874)[jest-cli]
[BREAKING] Use ESM exports (#8874)[jest-cli]
[BREAKING] Remove re-exports from @jest/core
(#8874)[jest-diff]
Remove the need to export splitLines0
function (#9151)[jest-environment-jsdom]
[BREAKING] Upgrade JSDOM from v11 to v15 (#8851)[jest-haste-map]
Upgrade to fsevents@2
(#9215)[jest-reporters]
[BREAKING] Upgrade Istanbul dependencies, which are used for code coverage (#9192)[jest-util]
[BREAKING] Remove deprecated exports (#8863)[jest-validate]
[BREAKING] Use ESM exports (#8874)[jest-types]
Mark InitialOptions
as Partial
(#8848)[jest-config]
Refactor normalize
to be more type safe (#8848)Changelog
24.9.0
[expect]
Highlight substring differences when matcher fails, part 1 (#8448)[expect]
Highlight substring differences when matcher fails, part 2 (#8528)[expect]
Improve report when mock-spy matcher fails, part 1 (#8640)[expect]
Improve report when mock-spy matcher fails, part 2 (#8649)[expect]
Improve report when mock-spy matcher fails, part 3 (#8697)[expect]
Improve report when mock-spy matcher fails, part 4 (#8710)[expect]
Throw matcher error when received cannot be jasmine spy (#8747)[expect]
Improve report when negative CalledWith assertion fails (#8755)[expect]
Improve report when positive CalledWith assertion fails (#8771)[expect]
Display equal values for ReturnedWith similar to CalledWith (#8791)[expect, jest-snapshot]
Change color from green for some args in matcher hints (#8812)[jest-snapshot]
Highlight substring differences when matcher fails, part 3 (#8569)[jest-core]
Improve report when snapshots are obsolete (#8665)[jest-cli]
Improve chai support (with detailed output, to match jest exceptions) (#8454)[*]
Manage the global timeout with --testTimeout
command line argument. (#8456)[pretty-format]
Render custom displayName of memoized components (#8546)[jest-validate]
Allow maxWorkers
as part of the jest.config.js
(#8565)[jest-runtime]
Allow passing configuration objects to transformers (#7288)[@jest/core, @jest/test-sequencer]
Support async sort in custom testSequencer
(#8642)[jest-runtime, @jest/fake-timers]
Add jest.advanceTimersToNextTimer
(#8713)[@jest-transform]
Extract transforming require logic within jest-core
into @jest-transform
(#8756)[jest-matcher-utils]
Add color options to matcherHint
(#8795)[jest-circus/jest-jasmine2]
Give clearer output for Node assert errors (#8792)[jest-runner]
Export all types in the type signature of jest-runner
(#8825)[jest-cli]
Detect side-effect only imports when running --onlyChanged
or --changedSince
(#8670)[jest-cli]
Allow --maxWorkers
to work with % input again (#8565)[babel-plugin-jest-hoist]
Expand list of whitelisted globals in global mocks (#8429)[jest-core]
Make watch plugin initialization errors look nice (#8422)[jest-snapshot]
Prevent inline snapshots from drifting when inline snapshots are updated (#8492)[jest-haste-map]
Don't throw on missing mapper in Node crawler (#8558)[jest-core]
Fix incorrect passWithNoTests
warning (#8595)[jest-snapshots]
Fix test retries that contain snapshots (#8629)[jest-mock]
Fix incorrect assignments when restoring mocks in instances where they originally didn't exist (#8631)[expect]
Fix stack overflow when matching objects with circular references (#8687)[jest-haste-map]
Workaround a node >=12.5.0 bug that causes the process not to exit after tests have completed and cancerous memory growth (#8787)[docs]
Replace FlowType with TypeScript in CONTRIBUTING.MD code conventions[jest-leak-detector]
remove code repeat (#8438)[docs]
Add example to jest.requireActual
(#8482)[docs]
Add example to jest.mock
for mocking ES6 modules with the factory
parameter (#8550)[docs]
Add information about using jest.doMock
with ES6 imports (#8573)[docs]
Fix variable name in custom-matcher-api code example (#8582)[docs]
Fix example used in custom environment docs (#8617)[docs]
Updated react tutorial to refer to new package of react-testing-library (@testing-library/react) (#8753)[docs]
Updated imports of react-testing-library to @testing-library/react in website (#8757)[jest-core]
Add getVersion
(moved from jest-cli
) (#8706)[docs]
Fix MockFunctions example that was using toContain instead of toContainEqual (#8765)[*]
Make sure copyright header comment includes license (#8783)[*]
Check copyright and license as one joined substring (#8815)[docs]
Fix WatchPlugins jestHooks.shouldRunTestSuite
example that receives an object (#8784)[*]
Enforce LF line endings (#8809)[pretty-format]
Delete obsolete link and simplify structure in README (#8824)[docs]
Fix broken transform link on webpack page (#9155)Changelog
24.3.0
We skipped 24.2.0 because a draft was accidentally published. Please use 24.3.0
or a newer version instead.
[expect]
: Improve report when matcher fails, part 10 (#7960)[expect]
: Improve report when matcher fails, part 11 (#8008)[expect]
: Improve report when matcher fails, part 12 (#8033)[expect]
: Improve report when matcher fails, part 7 (#7866)[expect]
: Improve report when matcher fails, part 8 (#7876)[expect]
: Improve report when matcher fails, part 9 (#7940)[jest-circus/jest-jasmine2]
Warn if describe returns a value (#7852)[jest-config]
Print error information on preset normalization error (#7935)[jest-get-type]
Add isPrimitive
function (#7708)[jest-haste-map]
Add skipPackageJson
option (#7778)[jest-util]
Add isPromise
(#7852)[pretty-format]
Support React.memo
(#7891)[expect]
Fix toStrictEqual
not considering arrays with objects having undefined values correctly (#7938)[expect]
Fix custom async matcher stack trace (#7652)[expect]
Fix non-object received value in toHaveProperty (#7986, #8067)[expect]
Fix non-symmetric equal for Number (#7948)[expect]
Remove duck typing and obsolete browser support code when comparing DOM nodes and use DOM-Level-3 API instead (#7995)[jest-changed-files]
Fix getChangedFilesFromRoots
to not return parts of the commit messages as if they were files, when the commit messages contained multiple paragraphs (#7961)[jest-changed-files]
Fix pattern for HG changed files (#8066)[jest-changed-files]
Improve default file selection for Mercurial repos (#7880)[jest-circus]
Fix bug with test.only (#7888)[jest-circus]
: Throw explicit error when errors happen after test is considered complete (#8005)[jest-cli]
Fix prototype pollution vulnerability in dependency (#7904)[jest-cli]
Refactor -o
and --coverage
combined (#7611)[jest-environment-node]
Add missing globals: TextEncoder and TextDecoder (#8022)[jest-haste-map]
Enforce uniqueness in names (mocks and haste ids) (#8002)[jest-jasmine2]
: Throw explicit error when errors happen after test is considered complete (#8005)[jest-mock]
Adds a type check to prototype
to allow mocks of objects with a primitive prototype
property. (#8040)[jest-transform]
Normalize config and remove unnecessary checks, convert TestUtils.js
to TypeScript (#7801)[jest-util]
Make sure to not fail if unable to assign toStringTag
to the process
object, which is read only in Node 12 (#8050)[jest-validate]
Fix validating async functions (#7894)[jest-worker]
Fix jest-worker
when using pre-allocated jobs (#7934)[static]
Remove console log '-' on the front page (#7977)[*]
: Setup building, linting and testing of TypeScript (#7808, #7855, #7951)[@jest/console]
: Extract custom console
implementations from jest-util
into a new separate package (#8030)[@jest/core]
Create new package, which is jest-cli
minus yargs
and prompts
(#7696)[@jest/core]
: Migrate to TypeScript (#7998)[@jest/fake-timers]
: Extract FakeTimers class from jest-util
into a new separate package (#7987)[@jest/reporter]
: New package extracted from jest-cli
(#7902)[@jest/reporters]
: Migrate to TypeScript (#7994, #8045)[@jest/source-map]
: Extract getCallsite
function from jest-util
into a new separate package (#8029)[@jest/test-result]
: Extract TestResult types and helpers into a new separate package (#8034)[@jest/transform]
: Migrate to TypeScript (#7918, #7945)[@jest/transform]
: New package extracted from jest-runtime
(#7915)[@jest/types]
: New package to handle shared types (#7834)[babel-jest]
: Migrate to TypeScript (#7862)[babel-plugin-jest-hoist]
: Migrate to TypeScript (#7898)[diff-sequences]
: Migrate to Typescript (#7820)[docs]
Add missing import to docs (#7928)[docs]
Update automock configuration, add note related to manual mocks (#8051)[docs]
Update/Organize TestSequencer and testSchedulerHelper code comments(#7984)[docs]
: Fix image paths in SnapshotTesting.md for current and version 24 (#7872)[docs]
: Improve runAllTimers doc (it exhausts the micro-task queue) (#8031)[docs]
: Update CONTRIBUTING.md to add information about running jest with jest-circus
locally (#8013).[expect]
: Migrate to TypeScript (#7919, #8028)[jest-changed-files]
: Migrate to TypeScript (#7827)[jest-circus]
: Migrate to TypeScript (#7916)[jest-cli]
: Migrate to TypeScript (#8024)[jest-diff]
: Migrate to TypeScript (#7824, #8027)[jest-docblock]
: Migrate to TypeScript (#7836)[jest-each]
: Migrate to Typescript (#8007)[jest-each]
: Refactor into multiple files with better types (#8018)[jest-environment-jsdom]
: Migrate to TypeScript (#8003)[jest-environment-node]
: Migrate to TypeScript (#7985)[jest-get-type]
: Migrate to TypeScript (#7818)[jest-haste-map]
: Migrate to TypeScript (#7854, #7951)[jest-jasmine2]
: TS migration (#7970)[jest-leak-detector]
: Migrate to TypeScript (#7825)[jest-matcher-utils]
: Migrate to TypeScript (#7835)[jest-message-util]
: Migrate to TypeScript (#7834)[jest-mock]
: Migrate to TypeScript (#7847, #7850, #7971)[jest-phabricator]
: Migrate to TypeScript (#7965)[jest-regex-util]
: Migrate to TypeScript (#7822)[jest-repl]
: Migrate to TypeScript (#8000)[jest-resolve-dependencies]
: Migrate to TypeScript (#7922)[jest-resolve]
: Migrate to TypeScript (#7871)[jest-runner]
: Migrate to TypeScript (#7968)[jest-runtime]
: Migrate to TypeScript (#7964, #7988)[jest-serializer]
: Migrate to TypeScript (#7841)[jest-snapshot]
: Migrate to TypeScript (#7899)[jest-util]
: Migrate to TypeScript (#7844, #8021)[jest-validate]
: Migrate to TypeScript (#7991)[jest-watcher]
: Migrate to TypeScript (#7843)[jest-worker]
: Migrate to TypeScript (#7853)[jest]
: Migrate to TypeScript (#8024)[pretty-format]
: Migrate to TypeScript (#7809, #7972)[jest-haste-map]
Optimize haste map tracking of deleted files with Watchman. (#8056)