Handle Backpack signature files in component discovery - #6940
Handle Backpack signature files in component discovery#6940philippedev101 wants to merge 3 commits into
Conversation
6e2b86b to
40fc51b
Compare
|
@philippedev101, I've set the pull request to draft while the integration tests are failing. In the case of As this behaviour was the same before the fix of #6937, I have given it its own issue: |
40fc51b to
f1b5ce2
Compare
|
I rebased on |
f1b5ce2 to
4e7659c
Compare
Treat declared .hsig files as Backpack signatures instead of unknown custom-preprocessor candidates. Track declared signature files for rebuilds, keep signature modules out of ordinary module resolution, and emit a Backpack-specific warning when a local .hsig file is not listed in the component's signatures field. Keep the existing custom-preprocessor warning for other unknown extensions.
4e7659c to
e10055a
Compare
|
@philippedev101, I'm keen not to lose momentum for Backpack-supporting Stack. Do you know if the failing CI is a problem with the original implementation of Backpack support or a problem with the changed |
|
Thanks for digging into this. And the extra ping because i lost sight of it. I agree it is important to catch this kind of Backpack issue before the next release. I investigated the failing The short version is that Stack sometimes needs I opened a follow-up PR that keeps installed signature packages as |
Addresses #6937.
@mpilgrem I don't think
.hsigshould go through the custom-preprocessor path. A.hsigfile is already the source file for a Backpack signature, not an input that should produce a.hsfile.The main user-visible change is that a normal Backpack package should stop getting a warning that suggests adding
.hsigtocustom-preprocessor-extensions. That warning sends people in the wrong direction: the project is not missing preprocessor configuration, Stack just needs to recognize the declared signature file as part of the package.There are now three cases. If the module is listed in
signatures, Stack treats the.hsigas expected and stays quiet. If there is a local.hsigfile but the module is not listed insignatures, Stack gives a Backpack-specific hint pointing at the missing field. If the file really is some other unknown extension, Stack still gives the existing custom-preprocessor warning.The declared
.hsigfiles are also tracked for rebuilds, so changing a signature is treated like changing another source file that matters to the component.Tests cover the valid Backpack case,
.hsigrebuild tracking, the undeclared-signature warning, and the unchanged custom-preprocessor warning path.