Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up sourcemaps in jest-runner rather than jest-jasmine #6176

Merged
merged 12 commits into from
May 22, 2018

Conversation

SimenB
Copy link
Member

@SimenB SimenB commented May 13, 2018

Summary

source-map-support has released a new version capable of cleaning up the array of handlers. Pulling in that version allows us to fix our memory leak

Fixes #5925

Test plan

CI does basic --detectLeaks, should be enough.

@SimenB SimenB requested a review from mjesun May 13, 2018 09:21
@SimenB SimenB changed the title Sourcemap leak Re-enable sourcemaps for the normal runtime May 13, 2018
@SimenB
Copy link
Member Author

SimenB commented May 13, 2018

Huh, it failed CI, that's interesting.

I'll have to dig into it later tonight or tomorrow

@SimenB
Copy link
Member Author

SimenB commented May 13, 2018

I wonder if we should move this into jest-runner instead of jest-jasmine2, to wrap around more of the code. That's the place the Runtime is instantiated as well, which is what I need to access sourcemaps. It's also where we run environment's setups and teardowns, which is sorta the same thing

@thymikee
Copy link
Collaborator

I think it makes more sense (if easily possible), as with current approach we'd also need to patch jest-circus as well.

@SimenB
Copy link
Member Author

SimenB commented May 13, 2018

Pushed that as well, let's see what CI says 🙂

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

Ok, I've rebased and moved the cleanup until after the test results are collected.

🤞

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

Gah, now it reports a leak 🙁

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

@mjesun thoughts on how we could move the leak detection until after test results are processed?

We can't clean up the sourcemap handler until the test results are collected, since that's when we collect stack traces.

@mjesun
Copy link
Contributor

mjesun commented May 18, 2018

@SimenB does it locally? Try running multiple times. I know graceful-fs is a tricky module anyway.

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

Yeah. The issue is that the leak is checked as part of a test run: https://github.com/facebook/jest/blob/08f790459206257b09b56f72a6d5abb4a82a3746/packages/jest-runner/src/run_test.js#L170-L171
But we need to run test result processing before we can uninstall sourcemaps in order for them to have the correct traces

@mjesun
Copy link
Contributor

mjesun commented May 18, 2018

:/ Is test result processing done per-test or after they've all run? If it's the latter, this would create a global leaks until the execution finishes, which is not good at all.

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

Is test result processing done per-test or after they've all run?

Per test file

@mjesun
Copy link
Contributor

mjesun commented May 18, 2018

Then I think we can either move the check to a later step, or bring the test result processment into an earlier stage. We gotta make sure that the environment object is GC-able, though; otherwise memory grows until exhaustion.

@SimenB
Copy link
Member Author

SimenB commented May 18, 2018

Any ideas on how to achieve that? I suppose we could throw on leaks instead of failing the spect through test results

@mjesun
Copy link
Contributor

mjesun commented May 18, 2018

Yeah, that makes sense to me. We can maybe throw an Error subclass and then use that in the other place to show the existing error message.

@SimenB
Copy link
Member Author

SimenB commented May 19, 2018

I think I was able to fix it. I now try-catch the test run itself, and access error.stack before rethrowing. That allows the correct stack to be collected, and I can uninstall before the leaks check is performed.

@SimenB
Copy link
Member Author

SimenB commented May 19, 2018

🎉

@codecov-io
Copy link

codecov-io commented May 19, 2018

Codecov Report

Merging #6176 into master will decrease coverage by 0.05%.
The diff coverage is 11.76%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #6176      +/-   ##
==========================================
- Coverage   64.37%   64.32%   -0.06%     
==========================================
  Files         219      219              
  Lines        8453     8457       +4     
  Branches        3        4       +1     
==========================================
- Hits         5442     5440       -2     
- Misses       3010     3016       +6     
  Partials        1        1
Impacted Files Coverage Δ
packages/jest-runner/src/run_test.js 5.08% <0%> (-1.44%) ⬇️
packages/jest-jasmine2/src/index.js 16% <100%> (-0.52%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6fe69d1...6d15ec5. Read the comment docs.

@SimenB SimenB added this to the Jest 23 milestone May 21, 2018
Copy link
Collaborator

@thymikee thymikee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not an expert in source maps, but it makes way more sense to me having them controlled by the runtime instead of test framework.
LGMT 👍

@SimenB SimenB changed the title Re-enable sourcemaps for the normal runtime Set up sourcemaps in jest-runner rather than jest-jasmine May 21, 2018
wopian pushed a commit to wopian/eslint-config-wopian that referenced this pull request May 25, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `~22.4.0` to `~23.0.0`



<details>
<summary>Release Notes</summary>

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](jestjs/jest@2745e3e...614f739)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality`
  ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers
  ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules
  ([#&#8203;6185](`jestjs/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially
  track down handles keeping it open after tests are complete.
  ([#&#8203;6130](`jestjs/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each`
  ([#&#8203;6102](`jestjs/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory
  ([#&#8203;6103](`jestjs/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore
  ([#&#8203;6117](`jestjs/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency
  ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries`
  ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot
  name and count ([#&#8203;6015](`jestjs/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process
  method if createTransformer method was defined.
  ([#&#8203;5999](`jestjs/jest#5999))
* `[expect]` Add stack trace for async errors
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent
  ([#&#8203;5235](`jestjs/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions
  ([#&#8203;5983](`jestjs/jest#5983))
* `[expect]` Add support for async matchers
   ([#&#8203;5919](`jestjs/jest#5919))
* `[expect]` Suggest toContainEqual
  ([#&#8203;5948](`jestjs/jest#5953))
* `[jest-config]` Export Jest's default options
  ([#&#8203;5948](`jestjs/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage`
  ([#&#8203;5929](`jestjs/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner
  ([#&#8203;5836](`jestjs/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s
  ([#&#8203;5883](`jestjs/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls.
  ([#&#8203;5846](`jestjs/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch
  mode, `--onlyChanged`, `--findRelatedTests` and more
  ([#&#8203;5601](`jestjs/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to
  `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and
  descriptive errors to `it`/ `test` for invalid arguments
  ([#&#8203;5558](`jestjs/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function
  ([#&#8203;5512](`jestjs/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report
  ([#&#8203;5693](`jestjs/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from
  promises ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add isError to utils
  ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc.,
  [#&#8203;5517](`jestjs/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers
  ([#&#8203;5503](`jestjs/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain
  ([#&#8203;5753](`jestjs/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property
  ([#&#8203;5752](`jestjs/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property
  ([#&#8203;5764](`jestjs/jest#5764))
* `[expect]`Add nthCalledWith spy matcher
  ([#&#8203;5605](`jestjs/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that
  they can not run in parallel
  ([#&#8203;5706](`jestjs/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases
  ([#&#8203;5826](`jestjs/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements
  ([#&#8203;5864](`jestjs/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner
  ([#&#8203;5909](`jestjs/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors
  ([#&#8203;5980](`jestjs/jest#5980))
* `[jest-message-util]` Include column in stack frames
  ([#&#8203;5889](`jestjs/jest#5889))
* `[expect]` Introduce toStrictEqual
  ([#&#8203;6032](`jestjs/jest#6032))
* `[expect]` Add return matchers
  ([#&#8203;5879](`jestjs/jest#5879))
* `[jest-cli]` Improve snapshot summaries
  ([#&#8203;6181](`jestjs/jest#6181))
* `[expect]` Include custom mock names in error messages
  ([#&#8203;6199](`jestjs/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings
  ([#&#8203;6221](`jestjs/jest#6221))
* `[expect]` Improve return matchers
  ([#&#8203;6172](`jestjs/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names
  ([#&#8203;6249](`jestjs/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock
  ([#&#8203;6244](`jestjs/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins.
  ([#&#8203;6253](`jestjs/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality
  ([#&#8203;6246](`jestjs/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed
  tests" mode. ([#&#8203;6167](`jestjs/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them
  ([#&#8203;6073](`jestjs/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable
  ([#&#8203;6075](`jestjs/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces
  ([#&#8203;6055](`jestjs/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions`
  causes test failures. ([#&#8203;5997](`jestjs/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules
  after the test environment is torn down
  ([#&#8203;5888](`jestjs/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder`
  ([#&#8203;5867](`jestjs/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch
  runtime errors ([#&#8203;5945](`jestjs/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook`
  ([#&#8203;5884](`jestjs/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch
  mode. ([#&#8203;5861](`jestjs/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome
  ([#&#8203;5951](`jestjs/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode
  ([#&#8203;5860](`jestjs/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use
  `globalSetup`/`globalTeardown` file that doesn't export a function.
  ([#&#8203;5835](`jestjs/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for
  RegExps created inside of a different VM
  ([#&#8203;5729](`jestjs/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle
  symlinked paths ([#&#8203;5085](`jestjs/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option
  ([#&#8203;5658](`jestjs/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same
  config ([#&#8203;5674](`jestjs/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation
  ([#&#8203;5692](`jestjs/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll
  ([#&#8203;5696](`jestjs/jest#5696))
* `[expect]` Fix rejects.not matcher
  ([#&#8203;5670](`jestjs/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files
  ([#&#8203;5702](`jestjs/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection
  ([#&#8203;5720](`jestjs/jest#5720))
* `[pretty-format]` Handle React fragments better
  ([#&#8203;5816](`jestjs/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context`
  components ([#&#8203;6093](`jestjs/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string
  ([#&#8203;5914](`jestjs/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows
  ([#&#8203;5941](`jestjs/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay
  ([#&#8203;5966](`jestjs/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".".
  ([#&#8203;5968](`jestjs/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the
  configuration ([#&#8203;5976](`jestjs/jest#5976))
* `[website]` Fix website docs
  ([#&#8203;5853](`jestjs/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys
  regardless of order ([#&#8203;6150](`jestjs/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements
  ([#&#8203;6162](`jestjs/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json
  defined ([#&#8203;6232](`jestjs/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to
  `jest-runner` ([#&#8203;6176](`jestjs/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own
  ([#&#8203;6215](`jestjs/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean
  resources for the top suite the same way as for all of the children suites
  ([#&#8203;5885](`jestjs/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer
  ([#&#8203;5991](`jestjs/jest#5991))
* `[*]` Run Prettier on compiled output
  ([#&#8203;5858](`jestjs/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins
  ([#&#8203;5708](`jestjs/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)`
  ([#&#8203;5648](`jestjs/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset
  ([#&#8203;5722](`jestjs/jest#5722))
* `[docs]` Add jest-community section to website
  ([#&#8203;5675](`jestjs/jest#5675))
* `[docs]` Add versioned docs for v22.4
  ([##&#8203;5733](https://github.com/facebook/jest/pull/#&#8203;5733))
* `[docs]` Improve Snapshot Testing Guide
  ([#&#8203;5812](`jestjs/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and
  `jest.genMockFunction` ([#&#8203;6173](`jestjs/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack
  traces ([#&#8203;6211](`jestjs/jest#6211))

---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
wopian pushed a commit to wopian/kitsu that referenced this pull request May 25, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `~22.4.0` to `~23.0.0`



<details>
<summary>Release Notes</summary>

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](jestjs/jest@2745e3e...v23.0.0)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality`
  ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers
  ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules
  ([#&#8203;6185](`jestjs/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially
  track down handles keeping it open after tests are complete.
  ([#&#8203;6130](`jestjs/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each`
  ([#&#8203;6102](`jestjs/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory
  ([#&#8203;6103](`jestjs/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore
  ([#&#8203;6117](`jestjs/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency
  ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries`
  ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot
  name and count ([#&#8203;6015](`jestjs/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process
  method if createTransformer method was defined.
  ([#&#8203;5999](`jestjs/jest#5999))
* `[expect]` Add stack trace for async errors
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s
  ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent
  ([#&#8203;5235](`jestjs/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions
  ([#&#8203;5983](`jestjs/jest#5983))
* `[expect]` Add support for async matchers
   ([#&#8203;5919](`jestjs/jest#5919))
* `[expect]` Suggest toContainEqual
  ([#&#8203;5948](`jestjs/jest#5953))
* `[jest-config]` Export Jest's default options
  ([#&#8203;5948](`jestjs/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage`
  ([#&#8203;5929](`jestjs/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner
  ([#&#8203;5836](`jestjs/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s
  ([#&#8203;5883](`jestjs/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls.
  ([#&#8203;5846](`jestjs/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch
  mode, `--onlyChanged`, `--findRelatedTests` and more
  ([#&#8203;5601](`jestjs/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to
  `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and
  descriptive errors to `it`/ `test` for invalid arguments
  ([#&#8203;5558](`jestjs/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function
  ([#&#8203;5512](`jestjs/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report
  ([#&#8203;5693](`jestjs/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from
  promises ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add isError to utils
  ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc.,
  [#&#8203;5517](`jestjs/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers
  ([#&#8203;5503](`jestjs/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain
  ([#&#8203;5753](`jestjs/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property
  ([#&#8203;5752](`jestjs/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property
  ([#&#8203;5764](`jestjs/jest#5764))
* `[expect]`Add nthCalledWith spy matcher
  ([#&#8203;5605](`jestjs/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that
  they can not run in parallel
  ([#&#8203;5706](`jestjs/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases
  ([#&#8203;5826](`jestjs/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements
  ([#&#8203;5864](`jestjs/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner
  ([#&#8203;5909](`jestjs/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors
  ([#&#8203;5980](`jestjs/jest#5980))
* `[jest-message-util]` Include column in stack frames
  ([#&#8203;5889](`jestjs/jest#5889))
* `[expect]` Introduce toStrictEqual
  ([#&#8203;6032](`jestjs/jest#6032))
* `[expect]` Add return matchers
  ([#&#8203;5879](`jestjs/jest#5879))
* `[jest-cli]` Improve snapshot summaries
  ([#&#8203;6181](`jestjs/jest#6181))
* `[expect]` Include custom mock names in error messages
  ([#&#8203;6199](`jestjs/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings
  ([#&#8203;6221](`jestjs/jest#6221))
* `[expect]` Improve return matchers
  ([#&#8203;6172](`jestjs/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names
  ([#&#8203;6249](`jestjs/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock
  ([#&#8203;6244](`jestjs/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins.
  ([#&#8203;6253](`jestjs/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality
  ([#&#8203;6246](`jestjs/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed
  tests" mode. ([#&#8203;6167](`jestjs/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them
  ([#&#8203;6073](`jestjs/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable
  ([#&#8203;6075](`jestjs/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces
  ([#&#8203;6055](`jestjs/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions`
  causes test failures. ([#&#8203;5997](`jestjs/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules
  after the test environment is torn down
  ([#&#8203;5888](`jestjs/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder`
  ([#&#8203;5867](`jestjs/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch
  runtime errors ([#&#8203;5945](`jestjs/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook`
  ([#&#8203;5884](`jestjs/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch
  mode. ([#&#8203;5861](`jestjs/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome
  ([#&#8203;5951](`jestjs/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode
  ([#&#8203;5860](`jestjs/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use
  `globalSetup`/`globalTeardown` file that doesn't export a function.
  ([#&#8203;5835](`jestjs/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for
  RegExps created inside of a different VM
  ([#&#8203;5729](`jestjs/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle
  symlinked paths ([#&#8203;5085](`jestjs/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option
  ([#&#8203;5658](`jestjs/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same
  config ([#&#8203;5674](`jestjs/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation
  ([#&#8203;5692](`jestjs/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll
  ([#&#8203;5696](`jestjs/jest#5696))
* `[expect]` Fix rejects.not matcher
  ([#&#8203;5670](`jestjs/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files
  ([#&#8203;5702](`jestjs/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection
  ([#&#8203;5720](`jestjs/jest#5720))
* `[pretty-format]` Handle React fragments better
  ([#&#8203;5816](`jestjs/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context`
  components ([#&#8203;6093](`jestjs/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string
  ([#&#8203;5914](`jestjs/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows
  ([#&#8203;5941](`jestjs/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay
  ([#&#8203;5966](`jestjs/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".".
  ([#&#8203;5968](`jestjs/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the
  configuration ([#&#8203;5976](`jestjs/jest#5976))
* `[website]` Fix website docs
  ([#&#8203;5853](`jestjs/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys
  regardless of order ([#&#8203;6150](`jestjs/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements
  ([#&#8203;6162](`jestjs/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json
  defined ([#&#8203;6232](`jestjs/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to
  `jest-runner` ([#&#8203;6176](`jestjs/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own
  ([#&#8203;6215](`jestjs/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean
  resources for the top suite the same way as for all of the children suites
  ([#&#8203;5885](`jestjs/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer
  ([#&#8203;5991](`jestjs/jest#5991))
* `[*]` Run Prettier on compiled output
  ([#&#8203;5858](`jestjs/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins
  ([#&#8203;5708](`jestjs/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)`
  ([#&#8203;5648](`jestjs/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset
  ([#&#8203;5722](`jestjs/jest#5722))
* `[docs]` Add jest-community section to website
  ([#&#8203;5675](`jestjs/jest#5675))
* `[docs]` Add versioned docs for v22.4
  ([##&#8203;5733](https://github.com/facebook/jest/pull/#&#8203;5733))
* `[docs]` Improve Snapshot Testing Guide
  ([#&#8203;5812](`jestjs/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and
  `jest.genMockFunction` ([#&#8203;6173](`jestjs/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack
  traces ([#&#8203;6211](`jestjs/jest#6211))

---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
calebeby pushed a commit to Pigmice2733/scouting-frontend that referenced this pull request May 30, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `v22.4.3` to `v23.0.1`



<details>
<summary>Release Notes</summary>

### [`v23.0.1`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2301)
[Compare Source](jestjs/jest@v23.0.0...3a3b4e3)
##### Chore & Maintenance

* `[jest-jasemine2]` Add dependency on jest-each ([#&#8203;6308](`jestjs/jest#6308))
* `[jest-each]` Move jest-each into core Jest ([#&#8203;6278](`jestjs/jest#6278))
* `[examples]` Update typescript example to using ts-jest ([#&#8203;6260](`jestjs/jest#6260))
##### Fixes

* `[pretty-format]` Serialize inverse asymmetric matchers correctly ([#&#8203;6272](`jestjs/jest#6272))

---

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](jestjs/jest@2745e3e...v23.0.0)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality` ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers ([#&#8203;6210](`jestjs/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules ([#&#8203;6185](`jestjs/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially track down handles keeping it open after tests are complete. ([#&#8203;6130](`jestjs/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each` ([#&#8203;6102](`jestjs/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory ([#&#8203;6103](`jestjs/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore ([#&#8203;6117](`jestjs/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries` ([#&#8203;6067](`jestjs/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot name and count ([#&#8203;6015](`jestjs/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process method if createTransformer method was defined. ([#&#8203;5999](`jestjs/jest#5999))
* `[expect]` Add stack trace for async errors ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s ([#&#8203;6008](`jestjs/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent ([#&#8203;5235](`jestjs/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions ([#&#8203;5983](`jestjs/jest#5983))
* `[expect]` Add support for async matchers  ([#&#8203;5919](`jestjs/jest#5919))
* `[expect]` Suggest toContainEqual ([#&#8203;5948](`jestjs/jest#5953))
* `[jest-config]` Export Jest's default options ([#&#8203;5948](`jestjs/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage` ([#&#8203;5929](`jestjs/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner ([#&#8203;5836](`jestjs/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s ([#&#8203;5883](`jestjs/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls. ([#&#8203;5846](`jestjs/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch mode, `--onlyChanged`, `--findRelatedTests` and more ([#&#8203;5601](`jestjs/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and descriptive errors to `it`/ `test` for invalid arguments ([#&#8203;5558](`jestjs/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function ([#&#8203;5512](`jestjs/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report ([#&#8203;5693](`jestjs/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from promises ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add isError to utils ([#&#8203;5670](`jestjs/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc., [#&#8203;5517](`jestjs/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers ([#&#8203;5503](`jestjs/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain ([#&#8203;5753](`jestjs/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property ([#&#8203;5752](`jestjs/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property ([#&#8203;5764](`jestjs/jest#5764))
* `[expect]`Add nthCalledWith spy matcher ([#&#8203;5605](`jestjs/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that they can not run in parallel ([#&#8203;5706](`jestjs/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases ([#&#8203;5826](`jestjs/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements ([#&#8203;5864](`jestjs/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner ([#&#8203;5909](`jestjs/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors ([#&#8203;5980](`jestjs/jest#5980))
* `[jest-message-util]` Include column in stack frames ([#&#8203;5889](`jestjs/jest#5889))
* `[expect]` Introduce toStrictEqual ([#&#8203;6032](`jestjs/jest#6032))
* `[expect]` Add return matchers ([#&#8203;5879](`jestjs/jest#5879))
* `[jest-cli]` Improve snapshot summaries ([#&#8203;6181](`jestjs/jest#6181))
* `[expect]` Include custom mock names in error messages ([#&#8203;6199](`jestjs/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings ([#&#8203;6221](`jestjs/jest#6221))
* `[expect]` Improve return matchers ([#&#8203;6172](`jestjs/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names ([#&#8203;6249](`jestjs/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock ([#&#8203;6244](`jestjs/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins. ([#&#8203;6253](`jestjs/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality ([#&#8203;6246](`jestjs/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed tests" mode. ([#&#8203;6167](`jestjs/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them ([#&#8203;6073](`jestjs/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable ([#&#8203;6075](`jestjs/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces ([#&#8203;6055](`jestjs/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions` causes test failures. ([#&#8203;5997](`jestjs/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules after the test environment is torn down ([#&#8203;5888](`jestjs/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder` ([#&#8203;5867](`jestjs/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch runtime errors ([#&#8203;5945](`jestjs/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook` ([#&#8203;5884](`jestjs/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch mode. ([#&#8203;5861](`jestjs/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome ([#&#8203;5951](`jestjs/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode ([#&#8203;5860](`jestjs/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use `globalSetup`/`globalTeardown` file that doesn't export a function. ([#&#8203;5835](`jestjs/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for RegExps created inside of a different VM ([#&#8203;5729](`jestjs/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle symlinked paths ([#&#8203;5085](`jestjs/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option ([#&#8203;5658](`jestjs/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same config ([#&#8203;5674](`jestjs/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation ([#&#8203;5692](`jestjs/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll ([#&#8203;5696](`jestjs/jest#5696))
* `[expect]` Fix rejects.not matcher ([#&#8203;5670](`jestjs/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files ([#&#8203;5702](`jestjs/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection ([#&#8203;5720](`jestjs/jest#5720))
* `[pretty-format]` Handle React fragments better ([#&#8203;5816](`jestjs/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context` components ([#&#8203;6093](`jestjs/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string ([#&#8203;5914](`jestjs/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows ([#&#8203;5941](`jestjs/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay ([#&#8203;5966](`jestjs/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".". ([#&#8203;5968](`jestjs/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the configuration ([#&#8203;5976](`jestjs/jest#5976))
* `[website]` Fix website docs ([#&#8203;5853](`jestjs/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys regardless of order ([#&#8203;6150](`jestjs/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements ([#&#8203;6162](`jestjs/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json defined ([#&#8203;6232](`jestjs/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to `jest-runner` ([#&#8203;6176](`jestjs/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own ([#&#8203;6215](`jestjs/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean resources for the top suite the same way as for all of the children suites ([#&#8203;5885](`jestjs/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer ([#&#8203;5991](`jestjs/jest#5991))
* `[*]` Run Prettier on compiled output ([#&#8203;5858](`jestjs/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins ([#&#8203;5708](`jestjs/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)` ([#&#8203;5648](`jestjs/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset ([#&#8203;5722](`jestjs/jest#5722))
* `[docs]` Add jest-community section to website ([#&#8203;5675](`jestjs/jest#5675))
* `[docs]` Add versioned docs for v22.4 ([#&#8203;5733](`jestjs/jest#5733))
* `[docs]` Improve Snapshot Testing Guide ([#&#8203;5812](`jestjs/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and `jest.genMockFunction` ([#&#8203;6173](`jestjs/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack traces ([#&#8203;6211](`jestjs/jest#6211))

---

### [`v22.4.4`](jestjs/jest@6851d8b...v22.4.4)
[Compare Source](jestjs/jest@6851d8b...v22.4.4)


---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
@SimenB SimenB mentioned this pull request Aug 13, 2019
@github-actions
Copy link

This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Please note this issue tracker is not a help forum. We recommend using StackOverflow or our discord channel for questions.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 12, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Sourcemaps don't work for code executed before tests
5 participants