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

Update karma-coverage to the latest version 🚀 #19

Merged
merged 2 commits into from
Aug 27, 2019

Conversation

greenkeeper[bot]
Copy link
Contributor

@greenkeeper greenkeeper bot commented Aug 20, 2019

The devDependency karma-coverage was updated from 1.1.2 to 2.0.0.

This version is not covered by your current version range.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.


Publisher: karmarunnerbot
License: MIT

Release Notes for v2.0.0

Bug Fixes

Chores

BREAKING CHANGES

  • deps: This set of changes may impact some use cases.

  • chore: Add Updated Istanbul Dependencies

The istanbul package is deprecated in favor several split packages that
control different aspects of how istanbul works. This commit adds the
recommended packages that will be used in future commits as
karma-coverage's usage of istanbul is updated to the latest api.

  • refactor(reporter): Follow new report API

This commit refactors the in memory report implementation to use the new
istanbul report API.

Report creation is removed from newer versions of the istanbul API, so
this commit adds a set of utility functions to wrap around the new API
and provide similar functionality as the old API. The top level export
uses the new utility function to register the in-memory report.

  • refactor(preprocessor): Switch to istanbul-lib-instrument

This commit updates the preprocessor to use istanbul-lib-instrument
instead of the deprecated istanbul package. The biggest change in this
refactor is using a callable function instead of a constructor when
creating instrumenters

The old istanbul package exposed the Instrumenter directly, allowing the
preprocessor to create an instance of it. istanbul-lib-instrument,
however, exposes a callable function that creates an Instrumenter.
This commit updates the preprocessor to follow this new pattern of using
a callable function. In order to ensure backwards compatibility, a
utility function is added to wrap constructors with a callable function
for creation automatically.

This change allows the following configuration for creating instrumenters:

  1. An object that contains an Instrumenter constructor
  2. An Instrumenter constructor itself
  3. A callable function that returns an Instrumenter instance.

This commit also uses the istanbul-lib-source-maps package to handle
storing source maps. A global source map store registers source maps so
they can be used later on in the reporter.

  • refactor(reporter): Switch to istanbul-lib-coverage

This commit updates the reporter by using the istanbul-lib-coverage
package api for handling coverage checking/management and the
istanbul-lib-report package api for handling reporting.

The new apis remove the need for collectors and remove the need to
handle disposing collectors.

  • refactor: Remove unused source cache utilities

This commit removes the source-cache-store and source-cache files as
they are no longer being used. The source-map-store and
istanbul-lib-source-maps are used instead, so these files are no longer
needed.

  • feat(util): Add Reset Functionality

This commit updates the report creator utility to allow resetting the
custom reporter map.

  • fix(preprocessor): Track Coverage Maps Properly

This commit updates the preprocessor to properly access file coverage
when storing it in the global coverage map (when includeAllSources is
true). The previous method did not work because the returned
instrumented code from the default istanbul instrumenter returns the
coverage map in a POJO object instead of JSON notation. This breaks the
coverage regex used to match and parse the coverage map.

The istanbul instrumenter offers the ability to receive the coverage map
for the last instrumented file through a separate function, so that is
tested for and used if it is supported. The original method is used as a
fallback for backwards compatibility.

This commit also addresses changes from the v0 instanbul instrumenter
options. The changes are additive only to maintain backwards compatibility
for other instrumenters.

  • fix(reporter): Access Data Properly to Check Coverage

This commit fixes errors with accessing data properly during the
checkCoverage method. A previous commit updated the implementation to
use istanbul-lib-coverage, but this involved an api change to access the
raw coverage data (which checkCoverage uses).

This commit also fixes the checking coverage for each file by using a
map to store file coverage summaries instead of merging summaries like
the global results. Per file coverage now works as expected.

  • test: Update Unit Tests to use new Istanbul API

This commit updates the mocking done in unit tests to properly mock the
new istanbul API. Additionally, new unit test suites are added for the
utility methods report-creator and source-map-store.

  • drop support for node < 8
  • reporter: the output folder names change, they no longer contain :
Commits

The new version differs by 14 commits.

  • 0e2800b chore: release v2.0.0
  • 99c0c35 chore: update contributors
  • f40d6af chore(deps): Use latest istanbul lib packages (#377)
  • b8f82a0 Update grunt dependencies (#374)
  • b51cee7 Update test dependencies (#373)
  • 14c8cba Merge pull request #372 from hicom150/update_eslint_dependencies
  • a6b0f17 Merge branch 'master' into update_eslint_dependencies
  • ac445f1 Merge pull request #371 from hicom150/update_travis
  • 00090ea chore: Update travis config
  • eefaaa2 style(eslint): Fix ESLint errors
  • d40463d chore: Update ESLint dependencies
  • c642c6b Update travis to match parent karma project
  • e288ca4 Update travis to match parent karma project
  • 15f8b12 fix: bump lodash for CVE-2018-16487

See the full diff


FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper bot 🌴

@coveralls
Copy link

Pull Request Test Coverage Report for Build 234

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 100.0%

Totals Coverage Status
Change from base Build 200: 0.0%
Covered Lines: 578
Relevant Lines: 578

💛 - Coveralls

greenkeeper bot added a commit that referenced this pull request Aug 20, 2019
@greenkeeper
Copy link
Contributor Author

greenkeeper bot commented Aug 20, 2019

Update to this version instead 🚀

Commits

The new version differs by 2 commits.

  • 9184fc0 chore: release v2.0.1
  • 57d4bd3 chore(deps): npm audit fix --force; update travis.yml (#380)

See the full diff

@liqueurdetoile liqueurdetoile merged commit e7b8c31 into master Aug 27, 2019
@liqueurdetoile liqueurdetoile deleted the greenkeeper/karma-coverage-2.0.0 branch August 27, 2019 21:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants