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

Tracking issue: stabilization of test runner code coverage #53924

Closed
2 of 3 tasks
cjihrig opened this issue Jul 18, 2024 · 5 comments
Closed
2 of 3 tasks

Tracking issue: stabilization of test runner code coverage #53924

cjihrig opened this issue Jul 18, 2024 · 5 comments
Labels
coverage Issues and PRs related to native coverage support. feature request Issues that request new features to be added to Node.js. test_runner Issues and PRs related to the test runner subsystem.

Comments

@cjihrig
Copy link
Contributor

cjihrig commented Jul 18, 2024

What is the problem this feature will solve?

This issue is for tracking remaining work to stabilize code coverage in the test runner. When this feature originally shipped, it had documented limitations. Those have all been resolved.

Note that stabilization does not prevent future semver-minor additions or bug fixes.

Here is the minimum list of things that I think need to be resolved:

What is the feature you are proposing to solve the problem?

Eventually stabilizing test runner code coverage

What alternatives have you considered?

No response

@cjihrig cjihrig added the feature request Issues that request new features to be added to Node.js. label Jul 18, 2024
@cjihrig
Copy link
Contributor Author

cjihrig commented Jul 18, 2024

cc @MoLow @atlowChemi @benjamingr if you have other things to add to the list.

@RedYetiDev RedYetiDev added coverage Issues and PRs related to native coverage support. test_runner Issues and PRs related to the test runner subsystem. labels Jul 18, 2024
nodejs-github-bot pushed a commit that referenced this issue Jul 22, 2024
This commit updates the test runner's code coverage so that
coverage options are explicitly passed in instead of pulled
from command line options.

PR-URL: #53931
Refs: #53924
Refs: #53867
Refs: #53866
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
targos pushed a commit that referenced this issue Jul 28, 2024
This commit updates the test runner's code coverage so that
coverage options are explicitly passed in instead of pulled
from command line options.

PR-URL: #53931
Refs: #53924
Refs: #53867
Refs: #53866
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
RafaelGSS pushed a commit that referenced this issue Aug 5, 2024
This commit updates the test runner's code coverage so that
coverage options are explicitly passed in instead of pulled
from command line options.

PR-URL: #53931
Refs: #53924
Refs: #53867
Refs: #53866
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
nodejs-github-bot pushed a commit that referenced this issue Sep 20, 2024
PR-URL: #53937
Fixes: #53867
Refs: #53924
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
@RedYetiDev
Copy link
Member

RedYetiDev commented Sep 20, 2024

Okay, coverage is now supported via the run() API.

@cjihrig cjihrig closed this as completed Sep 25, 2024
targos pushed a commit that referenced this issue Oct 4, 2024
PR-URL: #53937
Fixes: #53867
Refs: #53924
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
@RedYetiDev
Copy link
Member

@cjihrig You closed this as completed, is code coverage ready to be stablized? We don't have statement coverage yet tho

@cjihrig
Copy link
Contributor Author

cjihrig commented Oct 28, 2024

I am tentatively planning to mark it as stable for v24. There is a performance issue that needs to be investigated more thoroughly, and maybe something related to source maps, but I don't remember off the top of my head.

IMO statement coverage is a nice to have, but realistically I don't foresee it ever being added without some help from V8 because I don't believe we should add the overhead of reparsing all of the code with something like acorn. Plus my understanding is that C8 doesn't do it either, and exactly one person has ever brought it up that I'm aware of.

Plus stable really just means that something can be reliably used and follows semver.

@RedYetiDev
Copy link
Member

and maybe something related to source maps

IMHO source maps shouldn't be a priority, it doesn't have to marked stable at the same time, it's still hidden behind --enable-source-maps

IMO statement coverage is a nice to have, ...

Agreed with everything you said


If you need any help stablizing, LMK. I'll look into some perf (and maybe add some benchmarks if I get a chance).

louwers pushed a commit to louwers/node that referenced this issue Nov 2, 2024
PR-URL: nodejs#53937
Fixes: nodejs#53867
Refs: nodejs#53924
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
coverage Issues and PRs related to native coverage support. feature request Issues that request new features to be added to Node.js. test_runner Issues and PRs related to the test runner subsystem.
Projects
None yet
Development

No branches or pull requests

2 participants