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

gRPC Compile will now fail if a platform core has been modified. #2551

Merged
merged 7 commits into from
Feb 27, 2024

Conversation

cmaglie
Copy link
Member

@cmaglie cmaglie commented Feb 26, 2024

Please check if the PR fulfills these requirements

See how to contribute

  • The PR has no duplicates (please search among the Pull Requests
    before creating one)
  • The PR follows
    our contributing guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)
  • UPGRADING.md has been updated with a migration guide (for breaking changes)
  • configuration.schema.json updated if new parameters are added.

What kind of change does this PR introduce?

Before starting a compilation the platforms are checked for changes on the main files boards.txt, platform.txt, and programmers.txt. If a change is detected, the compile fails with an InstanceNeedsReinitializationError.
A gRPC client would need to perform a new Init call to update the in-memory structures, and retry the compile.

What is the current behavior?

If a core platform file (boards.txt, platform.txt, or programmers.txt) is modified, the compile is performed with the old files already loaded in memory, leading to #2523.

What is the new behavior?

The compile fails with an InstanceNeedsReinitializationError.

Does this PR introduce a breaking change, and is titled accordingly?

No

Other information

@cmaglie cmaglie self-assigned this Feb 26, 2024
@cmaglie cmaglie added type: enhancement Proposed improvement topic: code Related to content of the project itself topic: gRPC Related to the gRPC interface labels Feb 26, 2024
@cmaglie cmaglie requested a review from a team February 26, 2024 11:09
@cmaglie cmaglie linked an issue Feb 26, 2024 that may be closed by this pull request
Copy link

codecov bot commented Feb 26, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 69.45%. Comparing base (870a48f) to head (185627b).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2551      +/-   ##
==========================================
+ Coverage   69.38%   69.45%   +0.06%     
==========================================
  Files         205      205              
  Lines       20162    20207      +45     
==========================================
+ Hits        13989    14034      +45     
  Misses       5050     5050              
  Partials     1123     1123              
Flag Coverage Δ
unit 69.45% <100.00%> (+0.06%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

commands/cmderrors/cmderrors.go Outdated Show resolved Hide resolved
internal/arduino/cores/cores.go Show resolved Hide resolved
internal/arduino/cores/cores.go Show resolved Hide resolved
@cmaglie cmaglie merged commit af0b60e into arduino:master Feb 27, 2024
102 checks passed
@cmaglie cmaglie deleted the auto_reload_cores branch February 27, 2024 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: code Related to content of the project itself topic: gRPC Related to the gRPC interface type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Watch for platform file changes
2 participants