Skip to content

Add code coverage using bisect_ppx #352

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

Merged
merged 4 commits into from
May 26, 2022
Merged

Conversation

lukemaurer
Copy link
Contributor

@lukemaurer lukemaurer commented Oct 26, 2021

Coverage is enabled by passing --enable-coverage to ./configure. It's intended that mostly only CI builds will use it, since only the boot compiler can be built (which suffices for running tests).

@mshinwell
Copy link
Collaborator

We'll need to figure out how not to break Merlin.

@lukemaurer lukemaurer changed the title Coverage Add code coverage using bisect_ppx Oct 28, 2021
@lukemaurer lukemaurer force-pushed the coverage branch 3 times, most recently from 8e32cd3 to 9e00e47 Compare October 29, 2021 13:46
@lukemaurer lukemaurer mentioned this pull request Oct 29, 2021
@lukemaurer lukemaurer requested a review from stedolan as a code owner November 25, 2021 17:54
@lukemaurer lukemaurer marked this pull request as draft November 25, 2021 17:55
@lukemaurer
Copy link
Contributor Author

Marking as a draft while I work on fixing the build failure with coverage enabled.

@lukemaurer lukemaurer force-pushed the coverage branch 5 times, most recently from 0089518 to dd1b698 Compare November 30, 2021 14:38
@lukemaurer lukemaurer marked this pull request as ready for review November 30, 2021 15:44
@lukemaurer lukemaurer marked this pull request as draft November 30, 2021 17:36
@lukemaurer lukemaurer marked this pull request as ready for review December 1, 2021 13:52
@lukemaurer lukemaurer force-pushed the coverage branch 2 times, most recently from b015824 to 185a94e Compare December 10, 2021 16:40
@Gbury
Copy link
Contributor

Gbury commented Jan 5, 2022

With coverage enable, you seem to skip the stage2 build. In that situation, is it possible to run the testsuite ? (since at the end of stage1, we haven't yet build an flambda2-compatible stdlib)

@lukemaurer lukemaurer mentioned this pull request Mar 22, 2022
3 tasks
@lukemaurer lukemaurer requested a review from gretay-js as a code owner May 4, 2022 16:56
@lukemaurer
Copy link
Contributor Author

With coverage enable, you seem to skip the stage2 build. In that situation, is it possible to run the testsuite ? (since at the end of stage1, we haven't yet build an flambda2-compatible stdlib)

Not the upstream testsuite, but we can run all (well, both) of our tests.

@lukemaurer lukemaurer marked this pull request as draft May 4, 2022 17:01
@lukemaurer
Copy link
Contributor Author

Converting to draft. There seems to be a bug in bisect-ppx-report that stops bisect-ppx-report html as soon as it sees a subdirectory.

@lukemaurer lukemaurer force-pushed the coverage branch 3 times, most recently from 6eeb284 to 90d7bb6 Compare May 18, 2022 09:57
Coverage is enabled by passing `--enable-coverage` to `./configure`.
It's intended that mostly only CI builds will use it, since only the
boot compiler can be built (which suffices for running tests).
@lukemaurer lukemaurer marked this pull request as ready for review May 24, 2022 10:32
Copy link
Collaborator

@mshinwell mshinwell left a comment

Choose a reason for hiding this comment

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

I think this looks good except for a couple of minor comments. We can make incremental fixes if something's wrong.

@mshinwell mshinwell merged commit 2dbf8c9 into ocaml-flambda:main May 26, 2022
mshinwell pushed a commit that referenced this pull request May 27, 2022
ccasin added a commit that referenced this pull request Jul 26, 2022
ce76e02 flambda-backend: Bugfix for type_application (#746)
44f3afb flambda-backend: PR580 for main branch (#743)
b851eaa flambda-backend: Backport first part of ocaml/ocaml PR10498 (#737)
fafb4bd flambda-backend: Fix return mode for eta-expanded function in type_argument (#735)
c31f6c3 flambda-backend: Fix treatment of functions called [@nontail] (#725)
847781e flambda-backend: Fix build_upstream post-PR703 (#712)
bfcbbf8 flambda-backend: Extend Pblock value kind to handle variants (#703)
b2cab95 flambda-backend: Merge ocaml-jst
a6d6e0e flambda-backend: Merge ocaml-jst
88a4f63 flambda-backend: Use Pmakearray for immutable arrays (#699)
eeaa44b flambda-backend: Install an ocamldoc binary (#695)
48d322b flambda-backend: Ensure that GC is not invoked from bounds check failures (#681)
4370fa1 flambda-backend: Review changes of term directory (#602)
65a4566 flambda-backend: Add code coverage using bisect_ppx (#352)
63ab65f flambda-backend: Bugfix for primitive inclusion (#662)
7e3e0c8 flambda-backend: Fix inclusion checks for primitives (#661)
96c68f9 flambda-backend: Speed up linking by changing cmxa format (#607)
1829150 flambda-backend: Bugfix for Translmod.all_idents (#659)

git-subtree-dir: ocaml
git-subtree-split: ce76e02
lukemaurer added a commit to lukemaurer/flambda-backend that referenced this pull request Jul 27, 2022
b7ec31d47 Don't check the names of unprefixed compilation units
4da7b7519 Fix compilation
f012913f3 Code review
204fdff1c Fix compilation on Power
e7ebe5b11 Code review
b3f462cae Temporarily allow `.cinaps` as the name of a compilation unit
01a9585d1 Fix `opttoploop.ml` compilation
2864c3463 Replace `Compilenv.make_symbol` in all archs
96d2760cd Simpler symbols
67b25c1 Merge flambda-backend changes
b2cab95 flambda-backend: Merge ocaml-jst
a6d6e0e flambda-backend: Merge ocaml-jst
88a4f63 flambda-backend: Use Pmakearray for immutable arrays (ocaml-flambda#699)
eeaa44b flambda-backend: Install an ocamldoc binary (ocaml-flambda#695)
48d322b flambda-backend: Ensure that GC is not invoked from bounds check failures (ocaml-flambda#681)
4370fa1 flambda-backend: Review changes of term directory (ocaml-flambda#602)
65a4566 flambda-backend: Add code coverage using bisect_ppx (ocaml-flambda#352)
63ab65f flambda-backend: Bugfix for primitive inclusion (ocaml-flambda#662)
7e3e0c8 flambda-backend: Fix inclusion checks for primitives (ocaml-flambda#661)
96c68f9 flambda-backend: Speed up linking by changing cmxa format (ocaml-flambda#607)
1829150 flambda-backend: Bugfix for Translmod.all_idents (ocaml-flambda#659)

git-subtree-dir: ocaml
git-subtree-split: b7ec31d4701dd0d3c63b9fa241dac6b983ef84f5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants