
Adam Wulkiewicz wrote:
Since 2015/04/26 the tests started to dissapear from Geometry summary pages for develop branch. And now the pages aren't even displayed properly, I see only:
Error extracting file: No matching files were found.
<snip>
What may be the reason of such behavior and most importantly do you know how to fix it?
I did more research and I found out that this change in Config (from Apr 24, 2015) is preventing the generation of the proper XML output for the Geometry tests: https://github.com/boostorg/config/commit/d7e258faf5ca45734a9f0349f2a9decedd... It's because when I'm running tests for the the boost revision corresponding to this change and Geometry develop the tests for Geometry aren't listed by b2. If Config isn't tested (e.g. tests are limited to geometry or geometry|math, etc.) everything is ok. Furthermore if boost revision is set to the parent commit then the tests for Geometry develop are listed properly. More info (reproducing and my output) at the end of the email. Do you know why the above change may cause the issue or more importantly how it could be fixed? This isn't the first time something like this is hapening. Before a change in Config affected not only Geometry but also Spirit. Do you have an idea why is this happening and how could this be prevented in the future? E.g. could it be caused by some error in Build? Would it be possible to somehow debug the bjam or building scripts to see why there is a problem? Is it possible to display some additional bjam debugging info which could allow to track the issue? If not then would it be possible to add it? FYI, the tests are present in the output XML but for them (tag "test-log") attributes "revision", "test-run" and "test-program" are not set. So the tests are performed, the log is there in the XML but because they wasn't somehow marked for execution (listed) the attributes are not set. This prevents the Regression's boost-report program to generate summay pages for Geometry. I'm guessing that such situation when the tests are run but can't be found on the list of the tests for output could be somehow detected and reported. Regards, Adam P.S. If you'd like to reproduce it. I'm testing it like this (from BOOST_ROOT): git checkout 4ba573a git submodule update cd libs/geometry git checkout develop after this Boost is set to the failing commit and Geometry to develop. As mentioned above it corresponds to https://github.com/boostorg/config/commit/d7e258faf5ca45734a9f0349f2a9decedd... Then: cd ../.. b2 "--debug-configuration" --dump-tests "--limit-tests=geometry|config" status you can of course break after all of the tests are listed. I see: [some debug output] [listed tests for other libraries] boost-test(LINK) "config/has_atomic_lib" : "libs/config/test/config_info.cpp" boost-test(COMPILE) "config/config_test_c" : "libs/config/test/config_test_c.c" boost-test(RUN) "config/config_test_threaded" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test_no_rtti" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test_no_except" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_info" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_threaded" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_no_rtti" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_no_except" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/math_info" ["always_show_run_output"] : "libs/config/test/math_info.cpp" boost-test(RUN) "config/abi_test" : "libs/config/test/abi/abi_test.cpp" "libs/config/test/abi/main.cpp" boost-test(RUN) "config/limits_test" : "libs/config/test/limits_test.cpp" boost-test(RUN) "config/config_link_test" : "libs/config/test/link/main.cpp" boost-test(COMPILE_FAIL) "config/test_thread_fail1" : "libs/config/test/threads/test_thread_fail1.cpp" boost-test(COMPILE_FAIL) "config/test_thread_fail2" : "libs/config/test/threads/test_thread_fail2.cpp" boost-test(COMPILE) "config/boost_fallthrough_test" : "libs/config/test/boost_fallthrough_test.cpp" boost-test(COMPILE) "config/helper_macro_test" : "libs/config/test/helper_macro_test.cpp" boost-test(RUN) "config/cstdint_test" : "libs/config/test/cstdint_test.cpp" boost-test(RUN) "config/cstdint_test2" : "libs/config/test/cstdint_test2.cpp" boost-test(COMPILE) "config/cstdint_include_test" : "libs/config/test/cstdint_include_test.cpp" boost-test(RUN) "config/config_build_check" : "libs/config/test/config_build_check.cpp" boost-test(RUN) "geometry/index/varray_old" : "libs/geometry/index/test/varray_old.cpp" boost-test(RUN) "geometry/index/varray" : "libs/geometry/index/test/varray.cpp" - has_atomic_lib builds : no - Clang implicit fallthrough : no - Boost.Config Feature Check: int128 : no - Boost.Config Feature Check: cxx11_constexpr : no - Boost.Config Feature Check: cxx11_user_defined_literals : no ...patience... Those are the only 2 tests for Geometry. Those are the only ones that are currently displayed on the website. Then go to the Boost revision right before the above one and execute the tests again: git checkout 826b356 git submodule update cd libs/geometry git checkout develop cd ../.. b2 "--debug-configuration" --dump-tests "--limit-tests=geometry|config" status Now I can see: [some debug output] - Boost.Config Feature Check: int128 : no (cached) - Boost.Config Feature Check: cxx11_constexpr : no (cached) - Boost.Config Feature Check: cxx11_user_defined_literals : no (cached) [listed tests for other libraries] boost-test(COMPILE) "config/config_test_c" : "libs/config/test/config_test_c.c" boost-test(RUN) "config/config_test_threaded" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test_no_rtti" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_test_no_except" : "libs/config/test/config_test.cpp" boost-test(RUN) "config/config_info" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_threaded" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_no_rtti" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/config_info_no_except" ["always_show_run_output"] : "libs/config/test/config_info.cpp" boost-test(RUN) "config/math_info" ["always_show_run_output"] : "libs/config/test/math_info.cpp" boost-test(RUN) "config/abi_test" : "libs/config/test/abi/abi_test.cpp" "libs/config/test/abi/main.cpp" boost-test(RUN) "config/limits_test" : "libs/config/test/limits_test.cpp" boost-test(RUN) "config/config_link_test" : "libs/config/test/link/main.cpp" boost-test(COMPILE_FAIL) "config/test_thread_fail1" : "libs/config/test/threads/test_thread_fail1.cpp" boost-test(COMPILE_FAIL) "config/test_thread_fail2" : "libs/config/test/threads/test_thread_fail2.cpp" boost-test(COMPILE) "config/boost_fallthrough_test" : "libs/config/test/boost_fallthrough_test.cpp" boost-test(COMPILE) "config/helper_macro_test" : "libs/config/test/helper_macro_test.cpp" boost-test(RUN) "config/cstdint_test" : "libs/config/test/cstdint_test.cpp" boost-test(RUN) "config/cstdint_test2" : "libs/config/test/cstdint_test2.cpp" boost-test(COMPILE) "config/cstdint_include_test" : "libs/config/test/cstdint_include_test.cpp" boost-test(RUN) "config/config_build_check" : "libs/config/test/config_build_check.cpp" boost-test(RUN) "geometry/index/varray_old" : "libs/geometry/index/test/varray_old.cpp" boost-test(RUN) "geometry/index/varray" : "libs/geometry/index/test/varray.cpp" boost-test(RUN) "config/link_test_test" : "libs/config/test/link/main.cpp" boost-test(RUN) "geometry/access" : "libs/geometry/test/core/access.cpp" boost-test(RUN) "geometry/coordinate_dimension" : "libs/geometry/test/core/coordinate_dimension.cpp" boost-test(RUN) "geometry/coordinate_system" : "libs/geometry/test/core/coordinate_system.cpp" boost-test(RUN) "geometry/coordinate_type" : "libs/geometry/test/core/coordinate_type.cpp" [the rest of the tests for Geometry] ...patience... So AFAIU the issue can be indeed related to the checks for has_atomic_lib.