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

Prepare for release 0.6.0 #92

Merged
merged 1 commit into from
Feb 24, 2024
Merged

Conversation

jannic
Copy link
Member

@jannic jannic commented Feb 20, 2024

No description provided.

@thejpster
Copy link
Member

svd2rust is about to change the default case for fields, methods and types (see rust-embedded/svd2rust#805). But maybe we should get 0.6 done and put that change in 0.7?

@jannic
Copy link
Member Author

jannic commented Feb 21, 2024

Yes, I heard about it moments after sending the merge request. If we want to do that change (l hope it's optional?) we should IMHO wait for it.

@thejpster
Copy link
Member

They changed the default. You can use a config file to put it back as it was. But it's a good change! The defaults were just wrong and confusing to teach.

@jannic
Copy link
Member Author

jannic commented Feb 21, 2024

They changed the default. You can use a config file to put it back as it was. But it's a good change! The defaults were just wrong and confusing to teach.

I rebuilt the pac using the updated svd2rust, and I agree, the new identifier casing is more consistent. One disadvantage I see is that the old spelling was usually identical to what's used in the datasheets, so it was easier to cross-reference between documentation and code.

Anyway, this is a huge breaking change. Trying to compile an unmodified rp2040-hal with that pac ends with:

error: could not compile `rp2040-hal` (lib) due to 333 previous errors

@jannic
Copy link
Member Author

jannic commented Feb 21, 2024

--ident-formats-theme legacy successfully reverts to the old behavior. So we do have the option to update svd2rust, while keeping the old identifiers.

@thejpster
Copy link
Member

Worse, it breaks applications that do Uart::new(p.UART0, ...) etc.

@AkiyukiOkayasu
Copy link
Contributor

If you would like to include svd2rust's new naming scheme in pac v0.6.0, I am willing to help.
I think the new naming scheme is more consistent, but we will need to carefully consider whether we should adopt it.

However, I suspect that the release will take some time, as they will be cautious about releasing it with major changes to svd2rust.
I feel it would be a better idea to release pac v0.6.0 now.

@jannic jannic merged commit f31d0ee into rp-rs:main Feb 24, 2024
4 checks passed
@jannic jannic deleted the release-0.6.0 branch February 24, 2024 11:14
@burrbull
Copy link
Contributor

svd2rust 0.32 is released.
You can use --ident-formats-theme legacy flag for old behavior. Of multiple -f flags for fine tuning.

Or use toml config. See https://github.com/stm32-rs/stm32-rs/blob/master/svd2rust.toml

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

Successfully merging this pull request may close these issues.

5 participants