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

Rust: Update dependencies [backport 2023.04] #19505

Merged
merged 5 commits into from
Apr 28, 2023

Conversation

maribu
Copy link
Member

@maribu maribu commented Apr 25, 2023

Backport of #19495

Contribution description

This updates both the RIOT-specific and generic dependencies of Rust examples and modules.

It also follows a deprecation from the G unit renaming originally done in #19292.

Testing procedure

  • Green CI should do

Issues/PRs references

Copying from one of the commits with some sed:

How to do similar PRs

Updating the RIOT-related dependencies (which here also updated bindgen because the dependency of riot-sys changed):

$ for x in **/Cargo.lock; do cargo update --manifest-path=${x%.lock}.toml --package riot-sys --package riot-wrappers; done

Updating everything (should never really be needed, b/c if something has a concrete dependency change it'd say so, but dependencies generally get better over time):

$ for x in **/Cargo.lock; do cargo update --manifest-path=${x%.lock}.toml; done

Creating the commit message:

$ git log --first-parent --format='%s (%b)' 9c29faf55d4c14d2d7f55f8df5059c52af4e5317..e4973a6ee88427f702dac41b3dce4fd6b6b9689e | sed 's/Merges: //' | sed 's/^/    * /'

git shortlog unfortunately doesn't show the merges the way I prefer linking them. The versions in the command line can be taken from git diff --text and looking for the riot-sys or riot-wrappers line, respectively.

chrysn added 5 commits April 25, 2023 15:42
This pulls in several fixes from these repositories:

* riot-sys:
    * Add `random` module to `riot-headers` (RIOT-OS/rust-riot-sys#26)
    * README: fix 2 typos (RIOT-OS/rust-riot-sys#31)
    * bindgen: Use 0.64 (RIOT-OS/rust-riot-sys#30)
    * wolfSSL support added (RIOT-OS/rust-riot-sys#28)
    * extern-types: Generate replacement types dynamically (RIOT-OS/rust-riot-sys#27)
    * Extern types: Add netq_t, make them large (RIOT-OS/rust-riot-sys#25)
    * doc: Suppress warnings about things C2Rust does not uphold (RIOT-OS/rust-riot-sys#23)
    * export macro_DAC_LINE (RIOT-OS/rust-riot-sys#22)
    * Add BINDGEN_OUTPUT_FILE export (RIOT-OS/rust-riot-sys#21)
* riot-wrappers:
    * DAC: Add wrapper around RIOTs DAC-interface (RIOT-OS/rust-riot-wrappers#36)
    * saul: Compatibly rename G* variants (RIOT-OS/rust-riot-wrappers#50)
    * tests: Add test for auto-init when auto-init debug is active (RIOT-OS/rust-riot-wrappers#48)
    * gcoap: Provide link encoder (RIOT-OS/rust-riot-wrappers#47)
    * Drop SUIT support in riot-wrappers (RIOT-OS/rust-riot-wrappers#44)
    * Add an auto init module (RIOT-OS/rust-riot-wrappers#45)
    * gcoap: Allow registration without scope for 'static listeners (RIOT-OS/rust-riot-wrappers#43)

Through direct dependency changes (the bindgen update), the number of
transitive dependencies could be reduced.

(cherry picked from commit de41031)
(cherry picked from commit 5f91bd8)
This helps remove duplicate code after previous updates.

(cherry picked from commit d630f00)
This fixes a regression by merging RIOT-OS/rust-riot-wrappers#55
(the "G" unit has been deprecated, but that deprecation was done wrong
in RIOT-OS/rust-riot-wrappers#50).

(cherry picked from commit 6724e85)
@maribu maribu added Area: drivers Area: Device drivers Area: examples Area: Example Applications Area: Rust Area: Rust wrapper Area: sys Area: System Area: tests Area: tests and testing framework CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: run tests If set, CI server will run tests on hardware for the labeled PR Process: release backport Integration Process: The PR is a release backport of a change previously provided to master labels Apr 25, 2023
@riot-ci
Copy link

riot-ci commented Apr 25, 2023

Murdock results

✔️ PASSED

ab9e067 drivers/lsm303agr: Rename deprecated unit G to GForce

Success Failures Total Runtime
6884 0 6884 09m:53s

Artifacts

Copy link
Member

@chrysn chrysn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No harm in backporting this (and it makes RIOT usable on newer Alpine systems through the bindgen 0.64 update). Not triggering a merge, that should be up to the RMs as to whether thy consider it important enough to be backported.

@MrKevinWeiss
Copy link
Contributor

This should be merged into the release branch after the release is finished.

@MrKevinWeiss
Copy link
Contributor

Now that the release is done, bors merge

@maribu
Copy link
Member Author

maribu commented Apr 28, 2023

I think online when the line starts with bors the bot will pick it up.

bors merge

bors bot added a commit that referenced this pull request Apr 28, 2023
19505: Rust: Update dependencies [backport 2023.04] r=maribu a=maribu

# Backport of #19495

### Contribution description

This updates both the RIOT-specific and generic dependencies of Rust examples and modules.

It also follows a deprecation from the G unit renaming originally done in #19292.

### Testing procedure

* Green CI should do

### Issues/PRs references

Copying from one of the commits with some sed:

* riot-sys:
    * RIOT-OS/rust-riot-sys#26
    * RIOT-OS/rust-riot-sys#31
    * RIOT-OS/rust-riot-sys#30
    * RIOT-OS/rust-riot-sys#28
    * RIOT-OS/rust-riot-sys#27
    * RIOT-OS/rust-riot-sys#25
    * RIOT-OS/rust-riot-sys#23
    * RIOT-OS/rust-riot-sys#22
    * RIOT-OS/rust-riot-sys#21
* riot-wrappers:
    * RIOT-OS/rust-riot-wrappers#36
    * RIOT-OS/rust-riot-wrappers#50
    * RIOT-OS/rust-riot-wrappers#48
    * RIOT-OS/rust-riot-wrappers#47
    * RIOT-OS/rust-riot-wrappers#44
    * RIOT-OS/rust-riot-wrappers#45
    * RIOT-OS/rust-riot-wrappers#43
    * (later, when the mistake became apparent) RIOT-OS/rust-riot-wrappers#55

### How to do similar PRs

Updating the RIOT-related dependencies (which here also updated bindgen because the dependency of riot-sys changed):

```
$ for x in **/Cargo.lock; do cargo update --manifest-path=${x%.lock}.toml --package riot-sys --package riot-wrappers; done
```

Updating everything (should never really be needed, b/c if something has a concrete dependency change it'd say so, but dependencies generally get better over time):

```
$ for x in **/Cargo.lock; do cargo update --manifest-path=${x%.lock}.toml; done
```

Creating the commit message:

```
$ git log --first-parent --format='%s (%b)' 9c29faf55d4c14d2d7f55f8df5059c52af4e5317..e4973a6ee88427f702dac41b3dce4fd6b6b9689e | sed 's/Merges: //' | sed 's/^/    * /'
```

git shortlog unfortunately doesn't show the merges the way I prefer linking them. The versions in the command line can be taken from `git diff --text` and looking for the riot-sys or riot-wrappers line, respectively.

Co-authored-by: chrysn <chrysn@fsfe.org>
@maribu
Copy link
Member Author

maribu commented Apr 28, 2023

Let's pack the merge train a bit.

bors cancel
bors merge

@bors
Copy link
Contributor

bors bot commented Apr 28, 2023

Canceled.

@bors
Copy link
Contributor

bors bot commented Apr 28, 2023

Build succeeded:

@bors bors bot merged commit f10a5b4 into RIOT-OS:2023.04-branch Apr 28, 2023
@maribu maribu deleted the backport/2023.04/rust-20230424 branch April 23, 2024 08:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: drivers Area: Device drivers Area: examples Area: Example Applications Area: Rust Area: Rust wrapper Area: sys Area: System Area: tests Area: tests and testing framework CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: run tests If set, CI server will run tests on hardware for the labeled PR Process: release backport Integration Process: The PR is a release backport of a change previously provided to master
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants