-
Notifications
You must be signed in to change notification settings - Fork 3k
Tools changes for bare metal #9561
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
Conversation
as the config system uses only abspaths
@theotherjimmy, thank you for your changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really nice so far!
tools/resources/__init__.py
Outdated
@@ -269,7 +269,7 @@ def get_file_refs(self, file_type): | |||
if not any( | |||
path.startswith(dirname(e.path)) for e in self._excluded_libs | |||
): | |||
to_ret.append(ref) | |||
to_ret.append(ref) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Woah
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I switched editors recently, until it decided to never insert spaces when I type <tab>
. I have switch back because that's infuriating when working with python.
@theotherjimmy Please add Release notes section (following https://os.mbed.com/docs/mbed-os/v5.11/contributing/workflow.html#functionality-change) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Waiting for design doc, how this is supposed to be used? Release notes section might help there.
@@ -0,0 +1,136 @@ | |||
# mbed SDK | |||
# Copyright (c) 2019 ARM Limited | |||
# |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please also add SPDX identifier for new files
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to +1 the request for a design doc before we can review this efficiently!
tools/config/definitions.json
Outdated
@@ -6,6 +6,13 @@ | |||
"type": "string" | |||
} | |||
}, | |||
"requires_definition": { | |||
"descirption": "Required libraries", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
@donatieng |
Should this PR include design doc? |
Is there a deprecation path for "features" (and components)? I feel like this requirement overlaps with this functionality. If so, it'd be worth adding an |
@donatieng I'm not aware of a plan to deprecate features. I can understand the overlap you see. Adding an |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the clarification @theotherjimmy ! Yes I think that the complexity of all these somewhat overlapping features ("features", "components" and now this) needs to be addressed otherwise this will hurt our UX.
@donatieng I agree that no guidance on "features", "components", |
I'm also in favour of deprecating features and components in favour of Components and features have pushed the integration pain towards the application developer, who need to be aware of what library requires what feature. |
@donatieng @theotherjimmy @SeppoTakalo i agree with you, but we need this for THIS release |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can someone run CI on this please? |
CI started |
Test run: FAILEDSummary: 1 of 11 test jobs failed Failed test jobs:
|
@ARMmbed/mbed-os-maintainers why was this build aborted? |
Test run: FAILEDSummary: 4 of 9 test jobs failed Failed test jobs:
|
Restarted CI, was aborted & restarted due to CI related error. |
Test run: SUCCESSSummary: 12 of 12 test jobs passed |
Hallelujah!!!!!!! |
Description
This PR implements (and tests :D) the changes to the scanning rules
and configuration system for the
requires
key inmbed_app.json
and
mbed_lib.json
. Note: This is a 5.12 feature.The
requires
key inmbed_lib.json
lists the other librariesthat are required to build this library. When this library is
required by an application, the libraries it
requires
will beincluded in the build.
The
requires
key inmbed_app.json
lists the libraries (name
key from
mbed_lib.json
) required to build the application. Thiscauses
mbed compile
to filter the libraries included to thoselisted in the application and those listed by the required
libraries.
Note: This pull request includes unit tests for this new feature.
Pull request type
Reviewers
(following section required to auto-generate release notes)
Release notes
Mbed OS now supports the
requires
section in bothmbed_app.json
andmbed_lib.json
.The
requires
key inmbed_lib.json
lists the other librariesthat are required to build this library. When this library is
required by an application, the libraries it
requires
will beincluded in the build.
The
requires
key inmbed_app.json
lists the libraries (name
key from
mbed_lib.json
) required to build the application. Thiscauses
mbed compile
to filter the libraries included to thoselisted in the application and those listed by the required
libraries.
No migration is required.