nitrokey-rs v0.8.0 has been released. It is available as a signed tag in
the nitrokey-rs Git repository:
https://git.sr.ht/~ireas/nitrokey-rs/refs/v0.8.0
Or on crates.io:
https://crates.io/crates/nitrokey/0.8.0
This minor release updates the nitrokey-sys-rs/libnitrokey dependency to
v3.6.0 and adds support for the Librem model.
Note that with this release, the main Git repository has moved to
sourcehut.
Thanks to Daniel Müller for many contributions and reviews!
Changelog
---------
- Export the `FirmwareVersion` struct.
- Mark the `Error`, `CommandError`, `CommunicationError`, `LibraryError`,
`Model` and `DeviceWrapper` enums as non-exhaustive.
- Bump the MSRV to 1.40.0.
- Rename the `numlock`, `capslock`, `scrollock` fields of the `Config` struct
to `num_lock`, `caps_lock`, `scroll_lock`.
- Update the `nitrokey-sys` dependency to v3.6.0.
- Use `NK_device_serial_number_as_u32` instead of `NK_device_serial_number`
in `Device::get_serial_number`.
- Use `NK_free_password_safe_slot_status` to free the pointer returned by
`NK_get_password_safe_slot_status` in `PasswordSafe::get_slot_status`.
- Use the `NK_config` struct for configuration handling.
- Use the derived `Default` implementation for the structs defined by
`nitrokey-sys`.
- Add `get_struct` utility function for querying structs with libnitrokey
functions that use an output parameter.
- Support the Librem Key model.
- Add the `Librem` variant to the `Model` and `DeviceWrapper` enums.
- Add the `Librem` struct.
- Change the `Display` implementation for the `Model` enum to print the
complete model name, i. e. Nitrokey Pro, Nitrokey Storage or Librem Key.
Commit summary
--------------
Robin Krahl (19):
Export the FirmwareVersion struct
Make *Error, Model, DeviceWrapper non-exhaustive
Fix link in User doc comment
Fix serial number check in device tests
Bump the MSRV to 1.40.0
Fix dead links in Device documentation
Rename *lock fields of the Config struct
Update nitrokey-sys to v3.6.0
Use NK_device_serial_number_as_u32
Correctly free pointer to PWS status
Use NK_config struct for configuration handling
Use Default::default for nitrokey-sys structs
Add get_struct utility function
Support the Librem Key model
Update deprecated functions in readme
Update readme
Update repository and triggers in build scripts
Update repository URL in Cargo.toml
Release v0.8.0
Daniel Mueller (1):
Fix link to nitrocli repository
.builds/archlinux-msrv.yml | 10 ++--
.builds/archlinux-use-system-lib.yml | 8 +++-
.builds/archlinux.yml | 8 +++-
.builds/lint.yml | 10 ++--
CHANGELOG.md | 23 +++++++++
Cargo.toml | 6 +--
README.md | 35 +++++++++-----
src/auth.rs | 41 ++++++++++------
src/config.rs | 92 ++++++++++++++++++------------------
src/device/librem.rs | 83 ++++++++++++++++++++++++++++++++
src/device/mod.rs | 52 ++++++++++----------
src/device/pro.rs | 14 +-----
src/device/storage.rs | 58 ++---------------------
src/device/wrapper.rs | 16 ++++++-
src/error.rs | 4 ++
src/lib.rs | 47 ++++++++++++++----
src/otp.rs | 8 ++--
src/pws.rs | 10 +++-
src/util.rs | 11 +++++
tests/device.rs | 36 ++++++--------
20 files changed, 362 insertions(+), 210 deletions(-)