Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BF - Fix QuadSPI include paths. #12298

Merged
merged 1 commit into from Feb 5, 2023
Merged

BF - Fix QuadSPI include paths. #12298

merged 1 commit into from Feb 5, 2023

Conversation

hydra
Copy link
Contributor

@hydra hydra commented Feb 4, 2023

Ping @blckmn

Note that due to the removal of non-unified targets this didn't show up as a merge request failure on your PR #12268 as there is no target that includes the QuadSPI code by default.

This highlights an issue with the testing strategy done by the CI system. Likely the solution is for the CI to build all the targets in the universal targets repo to make sure they all compile as intended.

The targets that previously included and used the QuadSPI code were the SPRacingH7EXTREME/H7ZERO/H7NANO.

@github-actions
Copy link

github-actions bot commented Feb 4, 2023

Do you want to test this code? Here you have an automated build:
Assets
WARNING: It may be unstable. Use only for testing! See: https://www.youtube.com/watch?v=I1uN9CN30gw for instructions for unified targets!

@blckmn
Copy link
Member

blckmn commented Feb 4, 2023

AUTOMERGE: (FAIL)

  • github identifies PR as mergeable -> FAIL
  • assigned to a milestone -> PASS
  • cooling off period lapsed -> FAIL
  • commit count less or equal to three -> PASS
  • Don't merge label NOT found -> PASS
  • at least one RN: label found -> FAIL
  • Tested label found -> FAIL
  • assigned to an approver -> FAIL
  • approver count at least three -> FAIL

@haslinghuis haslinghuis added this to the 4.5 milestone Feb 4, 2023
@blckmn
Copy link
Member

blckmn commented Feb 5, 2023

Ping @blckmn

Note that due to the removal of non-unified targets this didn't show up as a merge request failure on your PR #12268 as there is no target that includes the QuadSPI code by default.

This highlights an issue with the testing strategy done by the CI system. Likely the solution is for the CI to build all the targets in the universal targets repo to make sure they all compile as intended.

The targets that previously included and used the QuadSPI code were the SPRacingH7EXTREME/H7ZERO/H7NANO.

There is no intention of building all the targets. The intention is to have the base clean "unified" target include anything that will be checked by the CI platform. So the base H750 or similar should have quadSPI enabled, and compiled in as part of the target.h.

@hydra
Copy link
Contributor Author

hydra commented Feb 5, 2023

Ping @blckmn
Note that due to the removal of non-unified targets this didn't show up as a merge request failure on your PR #12268 as there is no target that includes the QuadSPI code by default.
This highlights an issue with the testing strategy done by the CI system. Likely the solution is for the CI to build all the targets in the universal targets repo to make sure they all compile as intended.
The targets that previously included and used the QuadSPI code were the SPRacingH7EXTREME/H7ZERO/H7NANO.

There is no intention of building all the targets. The intention is to have the base clean "unified" target include anything that will be checked by the CI platform. So the base H750 or similar should have quadSPI enabled, and compiled in as part of the target.h.

It's not just USE_QUAD_SPI, there are other #defines that need their gated code compiled, which is what some of the Nucleo RAM-BASED ones did and that the SPRacing targets did.

If the intention is that the CI at least compiles everything, and that was the case prior to the removal of the legacy targers, then suggest running some coverage tools and combine the coverage reports from all of the outputs of all of the base targets to find out what is NOT being compiled and then create CI specific targets that are excluded from releases.

Note, it doesn't make sense to include some gates in base targets, and some gates are mutually exclusive.

@blckmn
Copy link
Member

blckmn commented Feb 5, 2023

Still the idea is to get the base target to compile as much as possible, if not all. With run time disabling of the feature if appropriate.

We are not returning to the hour long builds of what can only be described as the same rinsed and repeated...

The cloud building of Zulu versions will highlight errors also, and fixes can follow.

@hydra
Copy link
Contributor Author

hydra commented Feb 5, 2023

I raised the issue as a feature request, in #12305 where this conversation can be continued. Let's keep remaining conversation on this PR focussed on the changes in this PR please.

@hydra
Copy link
Contributor Author

hydra commented Feb 5, 2023

@haslinghuis @blckmn this should be labelled as a BUG and merged ASAP as it prevents targets from compiling and being built. Compile errors are generally treated as the number 1 priority as they prevents other developers from working on the codebase.

@blckmn blckmn merged commit cb2ab68 into betaflight:master Feb 5, 2023
@blckmn blckmn added the BUG Bugs are excluded from automatically being marked as stale label Feb 5, 2023
davidbitton pushed a commit to davidbitton/betaflight that referenced this pull request Feb 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BUG Bugs are excluded from automatically being marked as stale Cleanup
Projects
Status: COMPLETED
Development

Successfully merging this pull request may close these issues.

None yet

3 participants