-
-
Notifications
You must be signed in to change notification settings - Fork 778
libraries/tock-register-interface: split out into separate repository #4588
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
base: master
Are you sure you want to change the base?
Conversation
The current method for including tock-registers is via the Cargo path specifier. If an external crate A relies on tock-registers as a dependency, using A in Tock will be flagged as a version mismatch (even if both are in fact the same version) since Cargo believes the same version crate to be different versions if one is specified as: ``` tock-registers = "0.10.0" ``` while the other is specified as: ``` tock-registers = { path = "path_to_tock_registers" } # also v0.10.0 ```
This commit removes tock-register-interface from the kernel repository source tree. From this point onward, this subtree instead lives at https://github.com/tock/tock-register-interface. Revision b512f97e5eb5 of the tock-register-interface repository corresponds to this remove tree's contents, modulo added license headers, a CHANGELOG entry, and a logo for the repository. This change is motivated (and based on) PR #4587, and implements a long-standing goal of maintaining tock-registers as a first-class crate with its own stability guarantees, separate from the kernel. It also follows in line with other kernel dependencies which we depend on for the Tock kernel, but maintain as part of the Tock GitHub organization, and thus retain full control over.
|
Good point, we should do that after merging, presumably. Edit: actually, it might be that we cannot update this information standalone, as it is pulled out of the |
While we're at it, should we resolve the inconsistency in calling it I propose we call everything |
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.
We can't do this without updating our external dependencies policy as it does not permit external dependencies in crates like arch and chips.
I support standardizing on the name |
I thought that the (verbal) argument around https://github.com/tock/firmware/ was that we're more comfortable with "external" dependencies that are under our control, i.e., ones under the |
@bradjc Another semantics question we haven't addressed in this document is what constitutes an "external dependency"? External to the kernel git repo? External to the Tock git org? Is depending on a crate maintained in the kernel repo, but pulled in using |
I have done the rename: https://github.com/tock/tock-registers |
This comment was marked as duplicate.
This comment was marked as duplicate.
(edit) Discussion moved to #4589 |
We should add a link in the libraries readme to the new location. |
Pull Request Overview
This commit removes tock-register-interface from the kernel repository source tree. From this point onward, this subtree instead lives at https://github.com/tock/tock-register-interface. Revision b512f97e5eb5 of the tock-register-interface repository corresponds to this remove tree's contents, modulo added license headers, a CHANGELOG entry, and a logo for the repository.
This change is motivated (and based on) PR #4587, and implements a long-standing goal of maintaining tock-registers as a first-class crate with its own stability guarantees, separate from the kernel. It also follows in line with other kernel dependencies which we depend on for the Tock kernel, but maintain as part of the Tock GitHub organization, and thus retain full control over.
Testing Strategy
make prepush
TODO or Help Wanted
N/A
Documentation Updated
/docs
, or no updates are required.Formatting
make prepush
.