Skip to content

Update 10 NuGet dependencies #406

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

Merged

Conversation

nfbot
Copy link
Member

@nfbot nfbot commented Jul 28, 2025

Bumps nanoFramework.Iot.Device.Mpu6886 from 1.2.869 to 1.2.889
Bumps UnitsNet.nanoFramework.Temperature from 5.74.0 to 5.75.0
Bumps nanoFramework.Iot.Device.Buzzer from 1.2.869 to 1.2.889
Bumps nanoFramework.Iot.Device.Rtc from 1.2.869 to 1.2.889
Bumps UnitsNet.nanoFramework.Frequency from 5.74.0 to 5.75.0
Bumps nanoFramework.Iot.Device.Ip5306 from 1.2.869 to 1.2.889
Bumps UnitsNet.nanoFramework.ElectricCurrent from 5.74.0 to 5.75.0
Bumps nanoFramework.Iot.Device.Axp192 from 1.2.869 to 1.2.889
Bumps UnitsNet.nanoFramework.ElectricPotential from 5.74.0 to 5.75.0
Bumps UnitsNet.nanoFramework.Power from 5.74.0 to 5.75.0

[version update]

⚠️ This is an automated update. ⚠️

Summary by CodeRabbit

  • Chores
    • Updated various device and measurement-related package versions across multiple projects to the latest releases, ensuring improved compatibility and stability. No changes to user-facing features or functionality.

Bumps nanoFramework.Iot.Device.Mpu6886 from 1.2.869 to 1.2.889</br>Bumps UnitsNet.nanoFramework.Temperature from 5.74.0 to 5.75.0</br>Bumps nanoFramework.Iot.Device.Buzzer from 1.2.869 to 1.2.889</br>Bumps nanoFramework.Iot.Device.Rtc from 1.2.869 to 1.2.889</br>Bumps UnitsNet.nanoFramework.Frequency from 5.74.0 to 5.75.0</br>Bumps nanoFramework.Iot.Device.Ip5306 from 1.2.869 to 1.2.889</br>Bumps UnitsNet.nanoFramework.ElectricCurrent from 5.74.0 to 5.75.0</br>Bumps nanoFramework.Iot.Device.Axp192 from 1.2.869 to 1.2.889</br>Bumps UnitsNet.nanoFramework.ElectricPotential from 5.74.0 to 5.75.0</br>Bumps UnitsNet.nanoFramework.Power from 5.74.0 to 5.75.0</br>
[version update]

### ⚠️ This is an automated update. ⚠️
Copy link

coderabbitai bot commented Jul 28, 2025

Walkthrough

This change updates multiple packages.lock.json files across several projects to increment the versions of various nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependencies. All affected packages are updated to newer minor or patch versions, with corresponding content hashes adjusted. No modifications to source code or public entities are present.

Changes

Cohort / File(s) Change Summary
FireTestApp Lock Update
Tests/FireTestApp/packages.lock.json
Updated versions and content hashes for several nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependencies.
M5Core2TestApp Lock Update
Tests/M5Core2TestApp/packages.lock.json
Bumped versions and content hashes for nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependencies.
M5CoreTestApp Lock Update
Tests/M5CoreTestApp/packages.lock.json
Upgraded nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* versions and hashes.
M5StickTestApp Lock Update
Tests/M5StickTestApp/packages.lock.json
Updated versions and hashes for nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependencies.
ToughTestApp Lock Update
Tests/ToughTestApp/packages.lock.json
Bumped nanoFramework.Iot.Device.Axp192 and multiple UnitsNet.nanoFramework.* versions and hashes.
AtomMatrix Lock Update
nanoFramework.AtomMatrix/packages.lock.json
Updated nanoFramework.Iot.Device.Mpu6886 and UnitsNet.nanoFramework.Temperature versions and content hashes.
CoreInk Lock Update
nanoFramework.CoreInk/packages.lock.json
Updated nanoFramework.Iot.Device.Buzzer, nanoFramework.Iot.Device.Rtc, and some UnitsNet.nanoFramework.* versions.
Fire Lock Update
nanoFramework.Fire/packages.lock.json
Updated several nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* versions and hashes.
M5Core Lock Update
nanoFramework.M5Core/packages.lock.json
Bumped multiple nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependency versions and hashes.
M5Core2 Lock Update
nanoFramework.M5Core2/packages.lock.json
Updated nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* versions and hashes.
M5StickC Lock Update
nanoFramework.M5StickC/packages.lock.json
Bumped nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependency versions and hashes.
M5StickCPlus Lock Update
nanoFramework.M5StickCPlus/packages.lock.json
Updated several nanoFramework.Iot.Device.* and UnitsNet.nanoFramework.* dependencies and hashes.
Tough Lock Update
nanoFramework.Tough/packages.lock.json
Bumped nanoFramework.Iot.Device.* and multiple UnitsNet.nanoFramework.* dependency versions and hashes.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

Suggested labels

CI: Publish Release

Note

⚡️ Unit Test Generation is now available in beta!

Learn more here, or try it out under "Finishing Touches" below.


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 198e330 and a33a454.

⛔ Files ignored due to path filters (34)
  • Tests/FireTestApp/FireTestApp.nfproj is excluded by none and included by none
  • Tests/FireTestApp/packages.config is excluded by none and included by none
  • Tests/M5Core2TestApp/M5Core2TestApp.nfproj is excluded by none and included by none
  • Tests/M5Core2TestApp/packages.config is excluded by none and included by none
  • Tests/M5CoreTestApp/M5CoreTestApp.nfproj is excluded by none and included by none
  • Tests/M5CoreTestApp/packages.config is excluded by none and included by none
  • Tests/M5StickTestApp/M5StickTestApp.nfproj is excluded by none and included by none
  • Tests/M5StickTestApp/packages.config is excluded by none and included by none
  • Tests/ToughTestApp/ToughTestApp.nfproj is excluded by none and included by none
  • Tests/ToughTestApp/packages.config is excluded by none and included by none
  • nanoFramework.AtomMatrix.nuspec is excluded by none and included by none
  • nanoFramework.AtomMatrix/nanoFramework.AtomMatrix.nfproj is excluded by none and included by none
  • nanoFramework.AtomMatrix/packages.config is excluded by none and included by none
  • nanoFramework.CoreInk.nuspec is excluded by none and included by none
  • nanoFramework.CoreInk/nanoFramework.CoreInk.nfproj is excluded by none and included by none
  • nanoFramework.CoreInk/packages.config is excluded by none and included by none
  • nanoFramework.Fire.nuspec is excluded by none and included by none
  • nanoFramework.Fire/nanoFramework.Fire.nfproj is excluded by none and included by none
  • nanoFramework.Fire/packages.config is excluded by none and included by none
  • nanoFramework.M5Core.nuspec is excluded by none and included by none
  • nanoFramework.M5Core/nanoFramework.M5Core.nfproj is excluded by none and included by none
  • nanoFramework.M5Core/packages.config is excluded by none and included by none
  • nanoFramework.M5Core2.nuspec is excluded by none and included by none
  • nanoFramework.M5Core2/nanoFramework.M5Core2.nfproj is excluded by none and included by none
  • nanoFramework.M5Core2/packages.config is excluded by none and included by none
  • nanoFramework.M5StickC.nuspec is excluded by none and included by none
  • nanoFramework.M5StickC/nanoFramework.M5StickC.nfproj is excluded by none and included by none
  • nanoFramework.M5StickC/packages.config is excluded by none and included by none
  • nanoFramework.M5StickCPlus.nuspec is excluded by none and included by none
  • nanoFramework.M5StickCPlus/nanoFramework.M5StickCPlus.nfproj is excluded by none and included by none
  • nanoFramework.M5StickCPlus/packages.config is excluded by none and included by none
  • nanoFramework.Tough.nuspec is excluded by none and included by none
  • nanoFramework.Tough/nanoFramework.Tough.nfproj is excluded by none and included by none
  • nanoFramework.Tough/packages.config is excluded by none and included by none
📒 Files selected for processing (13)
  • Tests/FireTestApp/packages.lock.json (2 hunks)
  • Tests/M5Core2TestApp/packages.lock.json (3 hunks)
  • Tests/M5CoreTestApp/packages.lock.json (2 hunks)
  • Tests/M5StickTestApp/packages.lock.json (3 hunks)
  • Tests/ToughTestApp/packages.lock.json (2 hunks)
  • nanoFramework.AtomMatrix/packages.lock.json (2 hunks)
  • nanoFramework.CoreInk/packages.lock.json (3 hunks)
  • nanoFramework.Fire/packages.lock.json (2 hunks)
  • nanoFramework.M5Core/packages.lock.json (2 hunks)
  • nanoFramework.M5Core2/packages.lock.json (3 hunks)
  • nanoFramework.M5StickC/packages.lock.json (3 hunks)
  • nanoFramework.M5StickCPlus/packages.lock.json (4 hunks)
  • nanoFramework.Tough/packages.lock.json (3 hunks)
🔇 Additional comments (33)
nanoFramework.Fire/packages.lock.json (2)

47-64: Dependency bump looks correct.

The nanoFramework.Iot.Device.* package versions and their contentHash values have been updated consistently. No red flags detected here.


185-202: UnitsNet upgrade aligned with the rest of the solution.

The UnitsNet.nanoFramework.* packages are bumped to 5.75.0 with matching hashes. Assuming CI passes, nothing further to address.

nanoFramework.AtomMatrix/packages.lock.json (2)

35-40: Package bump to nanoFramework.Iot.Device.Mpu6886 looks safe.

Patch-level upgrade (1.2.869 → 1.2.889) is unlikely to introduce breaking API changes. 👍
Just make sure the board firmware you flash for CI/dev tests pulls the matching native version, otherwise you may hit a checksum mismatch at load time.


113-118: UnitsNet.nanoFramework.Temperature pinned to 5.75.0 – check transitive consistency.

No objections to the minor bump, but this package is often pulled transitively by other UnitsNet.nanoFramework.* libs. Verify that all other lock files in the solution now point to the same 5.75.0 line to avoid assembly duplication at deploy time.

nanoFramework.CoreInk/packages.lock.json (1)

29-34: Dependency bumps look correct and consistent
All four packages (nanoFramework.Iot.Device.Buzzer, nanoFramework.Iot.Device.Rtc, UnitsNet.nanoFramework.Frequency, UnitsNet.nanoFramework.Temperature) are moved to the intended versions, and the accompanying content hashes are updated accordingly. JSON syntax is intact.

No issues from a lock-file perspective. A clean dotnet restore on CI will confirm the packages are available on the feed.

Also applies to: 49-52, 115-118, 121-124

nanoFramework.Tough/packages.lock.json (3)

29-34: Dependency bumped to 1.2.889 – confirm no API-surface changes.

nanoFramework.Iot.Device.Axp192 moves from 1.2.8691.2.889 (patch). This should be binary-compatible, but the device-power-management code is central to board bring-up; a silent change could break battery or power-path handling.

  1. Run the Tough test-app smoke-suite on real hardware.
  2. Pay attention to Axp192 status-register reads and charging current reporting.

47-52: RTC package patch update – verify epoch/offset logic.

nanoFramework.Iot.Device.Rtc was also patched to 1.2.889. Historically, minor fixes in this package have tweaked BCD conversion and Unix-epoch handling. Quick sanity: set/get time on both Vbat-powered and fresh-boot scenarios.


143-166: UnitsNet 5.74.0 → 5.75.0 – low-risk but run unit tests.

All four UnitsNet.measurement packages have been bumped one patch level. Release notes usually contain numeric-precision or formatting tweaks; API surface is stable. Re-run any calculations that assert exact string formats (e.g., "3.3 mA").

Tests/M5CoreTestApp/packages.lock.json (4)

31-34: nanoFramework.Iot.Device.Ip5306 bumped to 1.2.889 – looks good

Version/requested and resolved fields are in sync, and the hash is updated. No concerns.


37-39: nanoFramework.Iot.Device.Mpu6886 bumped to 1.2.889 – looks good

Consistent update, no mismatches detected.


157-160: UnitsNet.nanoFramework.ElectricCurrent bumped to 5.75.0 – verify build/test pass

The change is correct, but UnitsNet occasionally introduces minor API tweaks between patch versions. Ensure all projects compile and tests pass after restore.


163-165: UnitsNet.nanoFramework.Temperature bumped to 5.75.0 – verify build/test pass

Same note as above—run a full build/test cycle to confirm no breaking changes.

Tests/M5Core2TestApp/packages.lock.json (4)

25-27: Patch-level bump for Axp192 is fine

The version increment stays within the 1.2.x series, so no breaking-change risk is expected.


49-51: Mpu6886 dependency updated – LGTM

Same minor/patch track; nothing else to flag.


55-57: Rtc package upgrade looks safe

Consistent with the other Iot.Device bumps in this PR.


191-213: UnitsNet packages moved to 5.75.0 – verify downstream build

All four UnitsNet.nanoFramework packages were advanced one patch version. That’s typically backwards-compatible, but please make sure the solution still builds and tests pass on the target hardware.

Tests/FireTestApp/packages.lock.json (2)

43-58: Device-package bumps look safe, but double-check runtime compatibility

All three nanoFramework.Iot.Device.* libraries have been promoted from 1.2.8691.2.889.
These are minor/patch increments, so no API break is expected, but they ship new native images that must match the target firmware you flash onto the board. Before merging:

  1. Make sure the CI pipeline builds the test app against the updated packages.
  2. Flash a firmware image built with nf-class-devices @1.2.889 (or newer) and run a smoke test to confirm no TypeLoadException or CLR_E_FAIL at boot.

If you already have a nightly build that includes the updated native assemblies, you’re good.
Otherwise, bump the firmware reference in this repo to keep the managed/native versions in lock-step.


169-184: UnitsNet 5.74.0 → 5.75.0: verify size & serialization impact

UnitsNet.nanoFramework.{ElectricCurrent,Frequency,Temperature} were patched.
Historically, some UnitsNet bumps tweaked enum ordinals and added units, which in turn slightly changed:

  • Serialized JSON/text representations
  • Deployment size of the managed image

Action items:

▪️ Run unit tests (if any) that persist or exchange UnitsNet quantities to ensure parsing still succeeds.
▪️ Check the .pe file size difference on the device to confirm no unexpected memory regression (important on constrained M5Stack).

If nothing breaks, these version bumps are 👍🏻.

Tests/M5StickTestApp/packages.lock.json (4)

29-34: Patch bump for Axp192 is fine; just rebuild to confirm

Minor-patch upgrade (1.2.869 ➔ 1.2.889) should be source-compatible.
Trigger a full rebuild/CI run to catch any lurking binary-compat issues.


49-51: Mpu6886 package updated – no concerns

Pure patch increment; safe to merge once tests pass.


55-57: Rtc package patch upgrade looks good

Nothing to flag; CI should confirm runtime behaviour.


125-148: UnitsNet family bumped to 5.75.0 – verify API surface unchanged

UnitsNet occasionally introduces new quantity names; unlikely on a patch release but do a quick solution-wide search for obsolete members after the bump.

nanoFramework.M5StickCPlus/packages.lock.json (2)

29-64: Package bumps look good

The IoT-device packages are simply advanced to the latest patch train (1.2.889). Versions exist on NuGet and match the rest of the repo. No further action required.


143-172: No stray references to UnitsNet 5.74.0 found

A repository‐wide search for “5.74.0” returned no matches. All UnitsNet packages are consistently updated to 5.75.0.

Tests/ToughTestApp/packages.lock.json (2)

23-28: Axp192 version pin consistency confirmed

All packages.lock.json files in the repo reference nanoFramework.Iot.Device.Axp192 at version 1.2.889. No mixed-driver binaries will surface at runtime—no further action required.


119-142: All UnitsNet.nanoFramework locks are uniform and up-to-date
Verified across all lock files that every UnitsNet.nanoFramework.* package is pinned to 5.75.0 and includes a valid contentHash. No stale or missing hashes detected.

nanoFramework.M5Core2/packages.lock.json (4)

29-34: Dependency bump to Axp192 looks good

Exact-range pinning to 1.2.889 is consistent with the other IoT device packages updated in this PR.
No further action required.


59-64: Mpu6886 version updated correctly

Confirmed the direct dependency now targets 1.2.889; content hash was regenerated.
All good from a lock-file perspective.


65-70: Rtc package aligned to 1.2.889

The version bump and hash update look correct.
👍


197-219: UnitsNet.nanoFramework packages coherently upgraded to 5.75.0
All four UnitsNet.nanoFramework dependencies share the same 5.75.0 version—no mixed-version pitfalls—and a scan confirms no lingering 5.74.0 entries. Looks clean.

nanoFramework.M5Core/packages.lock.json (2)

35-52: All bumped package locks are consistent

I ran rg '"nanoFramework\.Iot\.Device\.(Buzzer|Ip5306|Mpu6886)".*1\.2\.869' from the repo root and found no instances of the old 1.2.869 version. No other packages.lock.json remains pinned to the previous version. Lock file bump looks good!


173-190: All UnitsNet packages are consistently at 5.75.0

A search for any lingering 5.74.0 entries under UnitsNet.nanoFramework.{ElectricCurrent,Frequency,Temperature} returned no matches, so all projects are aligned on 5.75.0.

nanoFramework.M5StickC/packages.lock.json (1)

31-33: Package bumps LGTM – please run CI/device smoke-tests for safety

All updated versions are patch-level or minor, so no API churn is expected.
Just make sure the solution still builds and basic hardware tests pass on the target device to catch any unforeseen binary incompatibilities.

Also applies to: 49-51, 55-57, 133-135, 139-141, 145-147, 151-153

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch nfbot/update-dependencies/6ae9196a-30e1-45ba-ba94-fb7c94c516a0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@nfbot nfbot merged commit dba159a into main Jul 28, 2025
9 checks passed
@nfbot nfbot deleted the nfbot/update-dependencies/6ae9196a-30e1-45ba-ba94-fb7c94c516a0 branch July 28, 2025 07:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant