jest-cli v24.0.0 Release Notes
-
π Features
- π₯
[jest-each]
[BREAKING] Add primitive pretty printing for interpolated titles (#7694) [jest-runtime]
Addjest.isolateModules
for scoped module initialization (#6701)- π₯
[jest-diff]
[BREAKING] Support diffing numbers and booleans instead of returning null for different ones (#7605) - π₯
[jest-diff]
[BREAKING] Replacediff
withdiff-sequences
package (#6961) - π₯
[jest-cli]
[BREAKING] Only set error process error codes when they are non-zero (#7363) - π₯
[jest-config]
[BREAKING] DeprecatesetupTestFrameworkScriptFile
in favor of newsetupFilesAfterEnv
(#7119) - π₯
[jest-worker]
[BREAKING] Add functionality to call asetup
method in the worker before the first call and ateardown
method when ending the farm (#7014) - π₯
[jest-config]
[BREAKING] Set defaultnotifyMode
tofailure-change
(#7024) - π₯
[jest-haste-map]
[BREAKING] Remove support for@providesModule
(#6104) - π₯
[jest-haste-map]
[BREAKING] Replace internal data structures to improve performance (#6960) - π₯
[jest-haste-map]
[BREAKING] Use relative paths to allow remote caching (#7020) - π₯
[jest-haste-map]
[BREAKING] Remove name from hash inHasteMap.getCacheFilePath
(#7218) - π₯
[babel-preset-jest]
[BREAKING] Export a function instead of an object for Babel 7 compatibility (#7203) - π₯
[jest-haste-map]
[BREAKING] Expose relative paths when getting the file iterator (#7321) - π₯
[jest-cli]
[BREAKING] Run code transforms overglobal{Setup,Teardown}
(#7562) [jest-haste-map]
AddhasteFS.getSize(path)
(#7580)- π¨
[jest-cli]
Print version ending in-dev
when running a local Jest clone (#7582) - π
[jest-cli]
Add Support forglobalSetup
andglobalTeardown
in projects (#6865) [jest-runtime]
AddextraGlobals
to config to load extra global variables into the execution vm (#7454)[jest-util]
ExportspecialChars
containing Unicode characters and ANSI escapes for console output (#7532)- 0οΈβ£
[jest-config]
Handle typescript (ts
andtsx
) by default (#7533) - π¦
[jest-validate]
Add support for comments inpackage.json
using a"//"
key (#7295) - π
[jest-config]
Add shorthand for watch plugins and runners (#7213) - β
[jest-jasmine2/jest-circus/jest-cli]
Add test.todo (#6996) [pretty-format]
Option to not escape strings in diff messages (#5661)[jest-haste-map]
AddgetFileIterator
toHasteFS
for faster file iteration (#7010)[jest-config]
AddreadConfigs
function, previously injest-cli
(#7096)- π§
[jest-snapshot]
Enable configurable snapshot paths (#6143) - π
[pretty-format]
Support HTMLCollection and NodeList in DOMCollection plugin (#7125) - π§
[jest-runtime]
Pass the normalized configuration to script transformers (#7148) [expect]
Improve report when assertion fails, part 3 (#7152)- π¨
[jest-runtime]
Ifrequire
fails without a file extension, print all files that match with one (#7160) [jest-haste-map]
MakeignorePattern
optional (#7166)[jest-haste-map]
AddgetCacheFilePath
to get the path to the cache file for aHasteMap
instance (#7217)- π
[jest-runtime]
RemovecacheDirectory
fromignorePattern
forHasteMap
if not necessary (#7166) [jest-validate]
Add syntax to validate multiple permitted types (#7207)- β
[jest-config]
Accept an array as as well as a string fortestRegex
(#7209) [expect/jest-matcher-utils]
Improve report when assertion fails, part 4 (#7241)[expect/jest-matcher-utils]
Improve report when assertion fails, part 5 (#7557)[expect]
Check constructor equality in .toStrictEqual() (#7005)- β±
[jest-util]
Addjest.getTimerCount()
to get the count of scheduled fake timers (#7285) [jest-config]
AdddependencyExtractor
option to use a custom module to extract dependencies from files (#7313, #7349, #7350, #7362)[jest-haste-map]
Accept agetCacheKey
method inhasteImplModulePath
modules to reset the cache when the logic changes (#7350)[jest-config]
Addhaste.computeSha1
option to compute the sha-1 of the files in the haste map (#7345)[expect]
expect(Infinity).toBeCloseTo(Infinity)
TreatsInfinity
as equal in toBeCloseTo matcher (#7405)- π·
[jest-worker]
Add node worker-thread support to jest-worker (#7408) - π§
[jest-config]
Allowbail
setting to be configured with a number allowing tests to abort aftern
of failures (#7335) - π§
[jest-config]
Allow % based configuration of--max-workers
(#7494) - β
[jest-runner]
Instantiate the test environment class with the currenttestPath
(#7442) [jest-config]
Always resolve jest-environment-jsdom from jest-config (#7476)[expect]
Improve report when assertion fails, part 6 (#7621)- π·
[jest-worker]
AddenableWorkerThreads
option to explicitly opt-in toworker_threads
if available (#7681)
π Fixes
[expect]
Accept inherited properties intoHaveProperty
matcher (#7686)[jest-diff]
Do not claim that-0
and0
have no visual difference (#7605)- π€‘
[jest-mock]
Fix automock for numeric function names (#7653) [jest-config]
EnsureexistsSync
is only called with a string parameter (#7607)- π
[expect]
toStrictEqual
considers sparseness of arrays. (#7591) - β
[jest-cli]
Fix empty coverage data for untested files (#7388) - π₯
[jest-cli]
[BREAKING] Do not usetext-summary
coverage reporter by default if other reporters are configured (#7058) - π₯
[jest-mock]
[BREAKING] Fix bugs with mock/spy result tracking of recursive functions (#6381) - π₯
[jest-haste-map]
[BREAKING] Recover files correctly after haste name collisions are fixed (#7329) - π₯
[pretty-format]
[BREAKING] Omit non-enumerable symbol properties (#7448) [*]
[BREAKING] Upgrade to Babel 7, dropping support for Babel 6 (#7016)[jest-cli]
Avoid watch mode causing bad terminal behavior in some cases (#7523)- π·
[jest-runner/jest-worker]
Fix missing console output in verbose mode (#6871) [expect]
Standardize file naming inexpect
(#7306)[jest-each]
Add empty array validation check (#7249)- β
[jest-cli]
Interrupt tests if interactive watch plugin key is pressed (#7222) [jest-each]
Add each array validation check (#7033)[jest-haste-map]
Do not visit again files with the same sha-1 (#6990)[jest-jasmine2]
Fix memory leak in Error objects hold by the framework (#6965)- π
[jest-haste-map]
Fixed Haste whitelist generation for scoped modules on Windows (#6980) - π€‘
[jest-mock]
Fix inheritance of static properties and methods in mocks (#7003) - π€‘
[jest-mock]
Fix mocking objects withoutObject.prototype
in their prototype chain (#7003) - π€‘
[jest-mock]
Check_isMockFunction
is true rather than truthy on potential mocks (#7017) - β‘οΈ
[jest-cli]
Update jest-cli to show git ref in message when usingchangedSince
(#7028) - β
[jest-jasmine2
] Fix crash when test return Promise rejected with null (#7049) - π€‘
[jest-runtime]
Check_isMockFunction
is true rather than truthy on potential global mocks (#7017) [jest-jasmine]
Show proper error message from asyncassert
errors (#6821)- π
[jest-jasmine2]
Better error message when a describe block is empty (#6372) - β
[jest-jasmine2]
Pending calls inside async tests are reported as pending not failed (#6782) - π
[jest-circus]
Better error message when a describe block is empty (#6372) - β
[jest-jasmine2]
Add missing testLocationResults forxit
andfit
(#6482) [expect]
Return false from asymmetric matchers if received value isnβt string (#7107)[jest-cli]
Fix unhandled error when a bad revision is provided tochangedSince
(#7115)- π§
[jest-config]
Moved dynamically assignedcwd
fromjest-cli
to default configuration injest-config
(#7146) - π·
[jest-config]
FixgetMaxWorkers
on termux (#7154) [jest-runtime]
Throw an explicit error ifjs
is missing frommoduleFileExtensions
(#7160)- β
[jest-runtime]
Fix missing coverage when using negative glob pattern intestMatch
(#7170) - π·
[*]
EnsuremaxWorkers
is at least 1 (was 0 in some cases where there was only 1 CPU) (#7182) - β
[jest-runtime]
Fix transform cache invalidation when requiring a test file from multiple projects (#7186) [jest-changed-files]
Return correctly the changed files when usinglastCommit=true
on Mercurial repositories (#7228)[babel-jest]
Cache includes babel environment variables (#7239)- π§
[jest-config]
Use strings instead ofRegExp
instances in normalized configuration (#7251) - π€‘
[jest-circus]
Make sure to display real duration even if time is mocked (#7264) [expect]
Improves the failing message fortoStrictEqual
matcher. (#7224)[expect]
Improves the failing message fortoEqual
matcher. (#7325)[jest-resolve]
Fix not being able to resolve path to mapped file with custom platform (#7312)- π
[jest-message-util]
Improve parsing of error messages for unusually formatted stack traces (#7319) [jest-runtime]
Ensure error message text is not lost on errors with code frames (#7319)[jest-haste-map]
Fix to resolve path that is start with words same as rootDir (#7324)[expect]
Fix toMatchObject matcher when used withObject.create(null)
(#7334)- π
[jest-haste-map]
Remove legacy condition for duplicate module detection (#7333) [jest-haste-map]
Fixrequire
detection with trailing commas and ignoreimport typeof
modules (#7385)[jest-cli]
Fix to set prettierPath via config file (#7412)- β
[expect]
Test more precisely for class instance getters (#7477) - π
[jest-cli]
Support dashed args (#7497) - β
[jest-cli]
Fix to run in band tests if watch mode enable when runInBand arg used (#7518) - β
[jest-runtime]
Fix mistake as test files when run coverage issue. (#7506) - β
[jest-cli]
print info about passWithNoTests flag (#7309) [pretty-format]
Omit unnecessary symbol filter for object keys (#7457)- π€‘
[jest-runtime]
FixrequireActual
on node_modules with mock present (#7404) - π
[jest-resolve]
FixisBuiltinModule
to support versions of node withoutmodule.builtinModules
(#7565) - β
[babel-jest]
Setcwd
to be resilient to it changing during the runtime of the tests (#7574) - π€‘
[jest-snapshot]
Write and read snapshots from disk even iffs
is mocked (#7080) [jest-config]
Normalizeconfig.cwd
andconfig.rootDir
using `realpath (#7598)[jest-environment-node]
Fix buffer property is not ArrayBuffer issue. (#7626)- π
[babel-plugin-jest-hoist]
Ignore TS type annotations when looking for out-of-scope references (#7641) [jest-config]
Add name to project if one does not exist to pick correct resolver (#5862)[jest-runtime]
PasswatchPathIgnorePatterns
to Haste instance (#7585)- π€‘
[jest-runtime]
Resolve mock files via Haste when usingrequire.resolve
(#7687)
π§ Chore & Maintenance
[*]
[BREAKING] Require Node.js 6+ for all packages (#7258)- π₯
[jest-util]
[BREAKING] Remove long-deprecated globals for fake timers (#7285) [*]
[BREAKING] Upgrade to Micromatch 3 (#6650)[*]
[BREAKING] Remove regenerator-runtime injection (#7595)- π·
[jest-worker]
Disableworker_threads
to avoid issues with libraries to ready for it (#7681) - π
[docs]
Fix message property in custom matcher example to return a function instead of a constant. (#7426) [jest-circus]
Standardize file naming injest-circus
(#7301)- π
[docs]
Add synchronous test.each setup (#7150) - π
[docs]
Addthis.extend
to the Custom Matchers API reference (#7130) - π§
[docs]
Fix default value forcoverageReporters
value in configuration docs (#7126) - π
[docs]
Add link for jest-extended in expect docs (#7078) [jest-util]
Add ErrorWithStack class (#7067)- β
[docs]
Document--runTestsByPath
CLI parameter (#7046) - π
[docs]
Fix babel-core installation instructions (#6745) - π
[docs]
Explain how to rewrite assertions to avoid large irrelevant diff (#6971) [examples]
add example using Babel 7 (#6983)- π
[docs]
Replace shallow equality with referential identity inExpectAPI.md
(#6991) - π¨
[jest-changed-files]
Refactor to useexeca
overchild_process
(#6987) [*]
Bump dated dependencies (#6978)- π
[scripts]
Donβt make empty sub-folders for ignored files in build folder (#7001) - π
[docs]
Add missing export statement inpuppeteer_environment.js
underdocs/Puppeteer.md
(#7127) - π
[docs]
Removed useless expect.assertions inTestingAsyncCode.md
(#7131) - π
[docs]
Remove references to@providesModule
which isn't supported anymore (#7147) - π
[docs]
UpdatesetupFiles
documentation for clarity (#7187) [docs]
Changerequire.require*
tojest.require*
(#7210)[jest-circus]
Add readme.md (#7198)- π
[jest-editor-support]
Remove from the repository (#7232) - π
[jest-test-typescript-parser]
Remove from the repository (#7232) - β
[tests]
Free tests from the dependency on value of FORCE_COLOR (#6585) - π
[*]
Add babel plugin to make sure Jest is unaffected by fake Promise implementations (#7225) - β
[docs]
Add correct default value fortestUrl
config option (#7277) - π
[docs]
Remove duplicate code inMockFunctions
(#7297) - π·
[*]
Add check for Facebook copyright headers on CI (#7370) - β‘οΈ
[*]
Update Facebook copyright headers (#7589) - π¨
[jest-haste-map]
RefactordependencyExtractor
and tests (#7385) - π
[docs]
Clearify conditional setting ofNODE_ENV
(#7369) - π
[docs]
Clarify conditional setting ofNODE_ENV
(#7369) [*]
Standardize file names (#7316, #7266, #7238, #7314, #7467, #7464), #7471)- π
[docs]
AddtestPathIgnorePatterns
in CLI documentation (#7440) - π
[docs]
Removed misleading text aboutdescribe()
grouping together tests into a test suite (#7434) - π
[diff-sequences]
Add performance benchmark to package (#7603) [*]
Replace as manyObject.assign
with object spread as possible (#7627)- π
[ci]
Initial support for Azure Pipelines (#7556)
π Performance
- π
[jest-mock]
ImprovegetType
function performance. (#7159)
- π₯