Bot releases are visible (Hide)
Published by github-actions[bot] 25 days ago
Updates the crate version in anticipation of a v1.0 tagged release.
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/v1.0.0...v1.0.1
Refactor the project structure to make it more idiomatic by using the built-in way of doing examples. Previously, we used workspace to separate the project library and the binary use as example, which made the project more complex.
To do so, I move the content of the hidparser workspace as the root project and the content of hidparse workspace in the examples folder. main.rs
has become hidparse.rs
since it is the test name.
Pros of using the examples folder:
[dev-dependency]
and make the difference between library dependency and example dependency clearer.cargo test
so it ensures that they always build.Now instead of doing cargo run
to execute the cli, we need to do cargo run --example hidparse
Ex: cargo run --example hidparse -- --path .\examples\samples\boot_keyboard.bin
cargo make build
and cargo make test
. In Cargo.toml
: hidparser = {git = "https://github.com/magravel/mu_rust_hid.git", branch = "review_mu_rust_hid-task-4098342"}
N/A
</blockquote>
<hr>
</details>
Made some changes that makes the code more rutsy.
- Impact functionality?
- Impacts security?
- Breaking change?
- Includes tests?
- Includes documentation?
I test this feature by running cargo make build
and cargo make test
in the devices repository with my code as dependency.
N/A
This allows handling descriptors that are not completely per HID spec; this allows partial support for devices where some reports are not valid, but some are. This gives more flexibility in supporting hardware with various degrees of adherence to spec requirements.
Unit tests updated and passed, example parser behavior verified on good and bad descriptors.
N/A unless the application was previously relying on descriptor parse failure semantics in some way, in which case error cases may need to be revisited.
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/v0.2.2...v1.0.0
Published by github-actions[bot] 11 months ago
Use cargo tarpaulin for testing, which creates code coverage results. Upload those results to codecov.io
<Please describe the test(s) that were run to verify the changes.>
<Describe how these changes should be integrated. Use N/A if nothing is required.>
Derives implementations of PartialEq/Eq traits for HID report descriptor structures.
PR includes a unit test that parses a report descriptor twice and verifies the results are equal.
N/A
HID spec indicates that LogicalMaximum should be treated as signed (i32) when LogicalMinimum is negative, but unsigned (u32) when LogicalMinum is not negative. Prior to this modification, the field_value() routine was always treating LogicalMaximum as i32, resulting in incorrect handling of some fields. This change addresses that, and adds a test to catch it.
Verified in QEMU, which has a USB keyboard implementation that reports LogicalMinimum(0), LogicalMaximum(0xffffffff) that triggers this issue.
This PR also incorporates unit tests to reproduce the issue, and these tests pass.
N/A
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/v0.2.1...v0.2.2
Published by github-actions[bot] about 1 year ago
Add set_field_data() and set_field_values() functions on VariableFields. These routines take a report buffer and modify data for the bit positions associated with the field location.
Unit tests incorporated.
N/A
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/v0.2.0...v0.2.1
Published by github-actions[bot] about 1 year ago
Initial import of hidparse and hid_report_descriptor_parser crates.
Built in unit tests, functional testing with real hardware.
Crate may be leveraged via standard rust crate usage practice.
Initial import of hidparse and hid_report_descriptor_parser crates.
Built in unit tests, functional testing with real hardware.
Crate may be leveraged via standard rust crate usage practice.
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/v0.1.0...v0.2.0
Published by github-actions[bot] about 1 year ago
Run spell check against .md, .py, and .rs files in the repo
Run markdownlint against .md files in the repo
Impacts functionality?
Impacts security?
Breaking change?
Includes tests?
Includes documentation?
PR pipelines.
N/A
Full Changelog: https://github.com/microsoft/mu_rust_hid/compare/...v0.1.0