Skip to content

Conversation

@vissarion
Copy link
Member

Fixes #523

Also adds a github actions script to test that all headers compile independently.

@awulkiew
Copy link
Member

Is this newly added test very heavy? All of the files in the library are compiled. AFAIR we decided not to run it automatically because it takes a lot of time. How long does it take vs minimal and documentation tests?

@vissarion
Copy link
Member Author

Good point. I think it was not to run automatically because it was failing (see #525 (comment)). Also this PR does not change that, it still do not run automatically but only called by the new github action.

Regarding performance I got the following timings (on my laptop with clang-15)

test time
b2 test/headers/ -j8 6m54.947s
b2 toolset=clang cxxstd=14,17,2a variant=debug,release address-model=32,64 test//minimal -j8 0m56.863s
b2 libs/geometry/doc/src/examples -j8 2m21.983s
cd boost/geometry/doc; b2 -j8 1m0.406s

Note that for the minimal test the timing refers to testing only 1 out of 14 compilers.

So roughly speaking the headers test is the 1/3 of the current tests run on actions (i.e. minimal & documentation). It is somehow heavy I agree.

Alternatively, we can enable it only for push and not for PRs or even add it to circleCI (where the percentage over the total test time would be much smaller).

@vissarion
Copy link
Member Author

@awulkiew the new test has picked up by github actions so now you can also check the times in the server; i.e. 20m for headers vs. 4-11m for each minimal test.

@vissarion vissarion added this to the 1.83 milestone Jun 16, 2023
Copy link
Collaborator

@barendgehrels barendgehrels left a comment

Choose a reason for hiding this comment

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

Thanks! I didn't review all changes in detail, but in general it looks good to me.

@awulkiew
Copy link
Member

Right, so it doesn't take that long vs all of the tests, since it's done only once. Thanks!

@vissarion vissarion merged commit 7c8c606 into boostorg:develop Jul 25, 2023
@vissarion vissarion deleted the fix/headers branch July 25, 2023 19:56
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.

Some headers don't compile independently

3 participants