Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This changes the developer experience (but not the user experience)
The following changes are proposed:
Lift cmake_minimum_required of test cases to 3.5.0(More details in the individual commit messages.)
The purpose of this change
Make it easier for a new developer of CMake Tools to run tests.
Other Notes/Information
I was working on a new feature for CMake Tools and, being new to the project, was having some trouble running the tests. After some investigation, it all came down to two hurdles:
To fix 1., instead of just writing instructions to install CMake 3.18, I decided to make the tests work with the current version 4.2, because the feature I am working on requires CMake 4.3 (not released yet) and I will want to test with that too. The changes required for that turned out to be relatively minor, and are contained in the first
threetwo of the attached commits.To fix 2., I made the tests that without fakebin executables would fail in obscure ways, instead fail with a clear message telling the user how to build the missing executables. This is the last commit.
Together, these changes allow me to successfully run all tests (
yarn smokeTests,unitTests,integrationTests,endToEndTestsSuccessfulBuild,endToEndTestsSingleRoot,endToEndTestsMultiRoot,backendTests) with both CMake 4.2.0 and 3.18.6 on my Ubuntu 20.04 system.Would these changes be welcome in the project? Or would you prefer other ways to mitigate these hurdles?
Since these are not user-visible changes, I did not add an entry to CHANGELOG.md. Should I?