firecracker-microvm / firecracker

Secure and fast microVMs for serverless computing.
http://firecracker-microvm.io
Apache License 2.0
25.03k stars 1.75k forks source link

Update all error structs/enums to use `thiserror::Error` #3278

Closed ShadowCurse closed 1 year ago

ShadowCurse commented 1 year ago

Currently most error enums in Firecracker use thiserror::Error to automatically implement Error and Display and From traits. But there are some that still don't use thiserror and have 50+ lines of implementations of Display trait or use derive_more::From

The goal of this issue is to make all Error structs/enums in Firecracker uniform.

pb8o commented 1 year ago

Some work in this regard is ongoing.

roypat commented 1 year ago

Note that when a manual implementation of Display is changed to one derived by thiserror, tests that only exist to mark the manual Display implementation as covered from a code coverage standpoint (such as this one) should be removed, as grcov will not consider proc-macro generated code, and proc-macro processed attributes in its coverage reports

sri-srikanth commented 1 year ago

Hey! I am a Computer Science student at the University of Texas at Austin taking a Virtualization course. My two groupmates and I were wondering if we could contribute to resolving this issue. Please let me know if this would be possible and we can get started.

ShadowCurse commented 1 year ago

Hi @sri-srikanth, you are welcome to work on this issue.