arkworks-rs / arkworks-rs/std

core::error::Error

Open
#63 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
42
Forks
45
PR merge metrics
No merged PRs in 30d

Description

[core::error::Error](https://doc.rust-lang.org/nightly/core/error/trait.Error.html) eixsts now, so ark-std should switch over. I've no idea if this changes anything else behind the scenes.

[core::io](https://doc.rust-lang.org/nightly/core/io/index.html) exists too, but only experimental, and obnoxiously thin, so pretty useless. There are anyways good reasons to re-fork `std::io`, and especially `std::io::error`, like `ErrorKind` being `Clone`, but..

At present, art-std is the single most popular non-std `::io`, but together [embedded-io and embedded-io-async](https://github.com/rust-embedded/embedded-hal) have slightly more dependents on crates.io, although not as many on github. We could make "abdicate" maintaining this by switching `ark_std::io` over to embedded-io or embedded-io-async?. Nope, embedded-io and embedded-io-async lack `Cursor` but maybe some other non-std `::io` wins up more fully featured.

Superceeds https://github.com/arkworks-rs/std/issues/44

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing ark_std::io and the linked core::error::Error API, then review the existing issue 44 context and the embedded-io alternatives mentioned here. Determine the compatibility and downstream impact of switching ark-std to core::error::Error; done means the replacement is agreed and the related behavior remains supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.