aries-askar icon indicating copy to clipboard operation
aries-askar copied to clipboard

Replace serde_cbor with ciborium

Open marlonbaeten opened this issue 1 year ago • 6 comments

The crate serde_cbor is unmaintained and has not received any updates in the last 3 years. The author of serde_cbor proposes ciborium as an alternative. This PR replaces the dependency on serde_cbor with ciborium.

marlonbaeten avatar Jun 04 '24 13:06 marlonbaeten

@marlonbaeten @berendsliedrecht take a look and see if this would work

ryjones avatar Jun 08 '24 15:06 ryjones

The Android builds are currently using Rust 1.67 in order to provide broader device support (Rust 1.68 increased the minimum NDK version: https://blog.rust-lang.org/2023/01/09/android-ndk-update-r25.html). I'm not sure if this is still necessary but it seems to conflict with one of the dependencies of ciborium which requires 1.70.

andrewwhitehead avatar Jun 10 '24 16:06 andrewwhitehead

It does look to me like the minimum API version only increased to KitKat which is already under 1% of devices, so I'm not sure how necessary this restriction is. Maybe it's for compatibility with other libraries? @berendsliedrecht

andrewwhitehead avatar Jun 10 '24 17:06 andrewwhitehead

I suggest merging this and bumping the images repo to whatever is new enough.

ryjones avatar Jun 10 '24 20:06 ryjones

There were some issues we encountered without the custom images in quite recent Android APIs, not sure if that will impact it, but would be good to first test it thoroughly.

I think it was mainly the NDK version.

Berend would know more

TimoGlastra avatar Jun 10 '24 21:06 TimoGlastra

There were some issues we encountered without the custom images in quite recent Android APIs, not sure if that will impact it, but would be good to first test it thoroughly.

I think it was mainly the NDK version.

Berend would know more

IIRC it was mainly due to rust 1.67+ not working for the Android builds. But I am not too sure anymore if that was because of cross or a subdependency.

I see that the CI fails on error: package 'half v2.4.1' cannot be built because it requires rustc 1.70 or newer, while the currently active rustc version is 1.67.1. Which means we either have to run cargo update -p [email protected] --precise 2.2.1 and see if that fixes it or see if we can update building android images with 1.70 and fix the occurring errors for that.

berendsliedrecht avatar Jun 11 '24 08:06 berendsliedrecht

Merged as part of #326, thanks!

andrewwhitehead avatar Nov 26 '24 22:11 andrewwhitehead