Closed HexDecimal closed 1 year ago
Hmm ok interesting. Are you using Windows or something else like bash for Windows or whatever it's called now?
The test is only supposed to generate the file path that breaks if platform.system() != "Windows"
(in CI the part of the test that breaks should get skipped). Can you share more information on the crash or error messages? Does it still break if you come the repo and run the tests from C:/exhale
(much shorter path length)?
Hmm ok interesting. Are you using Windows or something else like bash for Windows or whatever it's called now?
Using GitBash, which is from the Git for Windows package. platform.system()
is 'Windows'
when I check it in Python in the GitBash shell. I don't think the shell is affecting this test.
Here's the relevant part:
-------------------------------------------------------------------------------------- Captured stderr setup ---------------------------------------------------------------------------------------
[~] error: Cannot open file C:/Users/4b796/Projects/_others_projects/exhale/testing/projects/cpp_long_names/docs_CPPLongNames_test_file_hierarchy/_doxygen/xml/classclass__that__is__longer__than__two__hundred__and__fifty__five__characters__long__which__is_b3ede03b695ca987c2d4a4e7f05f30e3.xml for writing!
[~] error: Cannot open file C:/Users/4b796/Projects/_others_projects/exhale/testing/projects/cpp_long_names/docs_CPPLongNames_test_file_hierarchy/_doxygen/xml/structstruct__that__is__longer__than__two__hundred__and__fifty__five__characters__long__which__i50119b87d5f473544b8165fa34a0cad2.xml for writing!
[~] error: Cannot open file C:/Users/4b796/Projects/_others_projects/exhale/testing/projects/cpp_long_names/docs_CPPLongNames_test_file_hierarchy/_doxygen/xml/unionunion__that__is__longer__than__two__hundred__and__fifty__five__characters__long__which__is_d964ced6248a839f08541098a5f8b500.xml for writing!
[~] error: Cannot open file C:/Users/4b796/Projects/_others_projects/exhale/testing/projects/cpp_long_names/docs_CPPLongNames_test_file_hierarchy/_doxygen/xml/namespacenamespace__that__is__longer__than__two__hundred__and__fifty__five__characters__long__whafbc602bde0658898d288d3ffbeb0b83.xml for writing!
(!) Did not locate file that defined define [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::MAKE_IT_BIG]; no link generated.
(!) Did not locate file that defined define [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::DEFINE_THAT_IS_LONGER_THAN_TWO_HUNDRED_AND_FIFTY_FIVE_CHARACTERS_LONG_WHICH_IS_AN_ABSOLUTELY_AND_COMPLETELY_RIDICULOUS_THING_TO_DO_AND_IF_YOU_DID_THIS_IN_THE_REAL_WORLD_YOU_PUT_YOURSELF_COMFORTABLY_IN_A_POSITION_TO_BE_DOWNSIZED_AND_OUTTA_HERE_AS_SOUL_POSITION_WOULD_EXPLAIN_TO_YOU]; no link generated.
(!) Did not locate file that defined enum [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::enum_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you]; no link generated.
(!) Did not locate file that defined typedef [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::typedef_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you]; no link generated.
(!) Did not locate file that defined variable [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::variable_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you]; no link generated.
(!) Did not locate file that defined function [namespace_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you::function_that_is_longer_than_two_hundred_and_fifty_five_characters_long_which_is_an_absolutely_and_completely_ridiculous_thing_to_do_and_if_you_did_this_in_the_real_world_you_put_yourself_comfortably_in_a_position_to_be_downsized_and_outta_here_as_soul_position_would_explain_to_you]; no link generated.
The file names shown are 263 characters long. I think the error is Doxygen being unable to open the files for writing.
The full log if you need it: tests.log
Thanks @HexDecimal for trying to fix this. The PR went out of scope, and the solution of forcing in the short names changes the meaning of the test. These tests run in CI because it gets cloned closer to C:/
, I have added #192 and will need to think about the right way to deal with this.
cpp_long_names
was causing Doxygen to fail on Windows which then caused the tests to fail. Doxygen could not write out the files if the repo was cloned to a moderately deep directory.I use
SHORT_NAMES = YES
to prevent this but it can't be used for all projects since it causes the Pimpl tests to fail. I'm not sure why.