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

master branch out of date #452

Open
perlindgren opened this issue Oct 18, 2022 · 4 comments
Open

master branch out of date #452

perlindgren opened this issue Oct 18, 2022 · 4 comments

Comments

@perlindgren
Copy link

It seems that the master branch is at an older 0.7.4 code.

[package]
authors = [
    "The Cortex-M Team <[email protected]>",
    "Jorge Aparicio <[email protected]>",
]
categories = ["embedded", "hardware-support", "no-std"]
description = "Low level access to Cortex-M processors"
documentation = "https://docs.rs/cortex-m"
keywords = ["arm", "cortex-m", "register", "peripheral"]
license = "MIT OR Apache-2.0"
name = "cortex-m"
readme = "README.md"
repository = "https://github.com/rust-embedded/cortex-m"
version = "0.7.4"

Not sure if there is a reason for it. Normally you would expect master to either reflect the latest released version or the current development (post release). Its not a huge thing, rather just confusing.

/Per

@adamgreig
Copy link
Member

Currently master contains the breaking changes that will become 0.8, while backwards-compatible backports/patches for the 0.7 releases are on the v0.7.x branch, so it's ended up with a larger version number.

I guess conceptually master should be at 0.8.0-alpha.1 or something like that. In practice keeping it at 0.7 allows you to use Cargo patch with the git version, which is often convenient for testing out new features, but maybe on balance having a more accurate version number would be better?

@perlindgren
Copy link
Author

Thanks for the clarification (and all your hard work).

I found it confusing:

  • with a version number 0.7 as it contains breaking changes. E.g. the "inline-asm" feature has been removed (as I guess its no longer needed to get proper inline assembly).
  • with a version number less then the latest release.

Now that I understand the rationale behind, the 0.7.4 version number really means nothing (in comparison to 0.7.6). I assume it is just reflecting where master started to diverge from the 0.7 release.

Maybe a reasonable "middle way" would be to put a comment in the Cargo.toml indicating that this is a preview of 0.8.x. With that at hand, it would be obvious that the version number is a placeholder for "great things to come".

@xiugaze
Copy link

xiugaze commented Oct 24, 2022

Thanks for the clarification (and all your hard work).

I found it confusing:

* with a version number 0.7 as it contains breaking changes. E.g. the "inline-asm" feature has been removed (as I guess its no longer needed to get proper inline assembly).

* with a version number less then the latest release.

Now that I understand the rationale behind, the 0.7.4 version number really means nothing (in comparison to 0.7.6). I assume it is just reflecting where master started to diverge from the 0.7 release.

Maybe a reasonable "middle way" would be to put a comment in the Cargo.toml indicating that this is a preview of 0.8.x. With that at hand, it would be obvious that the version number is a placeholder for "great things to come".

Hey, this has nothing to do with this issue really, but can you explain what the implications are of removing the inline-asm feature`, and how I should go about using inline assembly going forward?

@perlindgren
Copy link
Author

If you use the released cortex-m (version 0.7.6) https://github.com/rust-embedded/cortex-m/blob/v0.7.x/Cargo.toml, you should add the features "inline-asm".

On the master branch, version (0.7.4) https://github.com/rust-embedded/cortex-m/blob/master/Cargo.toml, you no longer need the features "inline-asm", (at least the feature has been removed). I did not try it though.

I made a PR to reduced the versioning confusion. #453.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants