Skip to content
This repository has been archived by the owner on Sep 12, 2024. It is now read-only.

Latest commit

 

History

History
123 lines (78 loc) · 5.73 KB

2020-10-26.md

File metadata and controls

123 lines (78 loc) · 5.73 KB

PEH 2020-10-26 Meeting Agenda

tags: Error Handling Minutes

Attendees

  • Jane Lusby
  • Ashley Mannix
  • Oliver :)
  • Jeremiah Senkpiel
  • Charles Ellis O'Riley Jr.
  • Sean Chen
  • Mara
  • DPC

Action Items

  • Implement trait based proof of concept for Backtrace in core (Jane Lusby)
  • Update object-provider API in generic member access RFC (Jane Lusby)
  • Create a tracking issue to document why Box<dyn Error> and related types do not implement the Error trait, what prevents it, and what would be needed moving forward (Ashley Mannix) zulip topic
  • Fill out table of contents of expected sections in The Rust Error Book (Oliver)
  • Review long-term vision blog post (Jane Lusby, Jakub Duchniewicz, Ashley Mannix)
  • Begin process of stabilization of Backtrace and fn backtrace (Ashley Mannix)
  • Resolve last blockers in Fix The Error Trait tracking issue (Oliver)
  • Status update on PanicInfo::message (DPC)
  • Get mentorship instructions for implementing Nicer Assert Messages RFC and begin implementation (Charles Ellis O'Riley Jr. and DPC)
  • Add unstable fn frames(&self) -> &[BacktraceFrame] method to Backtrace on nightly based on backtrace crate's API (Sean Chen and Ashley Mannix)

Agenda Items

Summary

impl<'a, E: Error + Sized + 'a> Error for &'a E

  • We believe we should pursue stabilizing this. There's already an open PR to update: rust-lang/rust#75180

dyn Error or impl Error?

  • We think the recommendation of &(dyn Error + 'static) for borrowed abstract errors and impl Error + Send + Sync + 'static for owned abstract errors is reasonable.

Table of contents for the Rust book

  • We've sketched out a table of contents that's ready to PR back to the main repository.

Stabilization for Backtrace

  • There's a current question about whether it's a problem that Backtrace doesn't share much with the internal machinery used to print panic backtraces.
    • @KodrAus is looking into it, and will post an update on the stabilization PR.
    • The panic implementation is a little different because it doesn't require all frames to be captured upfront, which is important for panic-on-oom support. Even if we don't share everything we should be able to share a little more between sys_common::backtrace and backtrace.

Fixing the Error

  • The last outstanding item is that you can't use the precision flag to limit the number of frames being printed when formatting a backtrace. This doesn't need to block stabilization, and Backtrace::frames should also make it less important.

PanicInfo::message

  • It's currently in progress.

Better assert RFC

  • It's currently in progress.

Backtrace::frames

  • There's an open PR for it that we're working through.

Vision blog post

  • It's been updated with the latest round of feedback and is ready to go!

Meeting Minutes

Meeting called to order at 13:00 Review of Action Items Review of implementing the backtrace in core PoC and updating the object provider RFC. No updates from Jane Lusby on those two items. Jane made a separate trackingh issue for box dyn error.

Ashley Mannix will write a stabilization report for &dyn Error.

action item: adding a table of contents for the rust book to which oliver will add a PR to project-error-handling repo for adding a table of contents for the rust book.

@Ashley Mannix will investigate @ralfjung concerns abount pacin! relying on different internals than backtrace itself does

next action item: resolving the "Fix The Error Trait" issue by @oliver which he's still looking into. Subsequent conversation on this issue determined that "fix backtrace's fmt" has been done and that the fancy extra fmt features could be spli into seperate tracking issues.

next action item: @DPC status update on the "PanicInfo::message" PR which he started started working on it.

next action item: Charles Ellis O'Riley Jr. and @DPC have been working on implementing the Better assert RFC. @Charles Ellis O'Riley Jr forked and cloned the repo Copied and filled in the config.toml file and ran the x.py command which produced more errors that I need to work through.

next action item: backtrace frame. @Sean Chen started a draft PR for it.

agenda item: @Mara has opened a new RFC for fixing inconsistencies between core and std panic. In summary the proposal is to make std's and core's panic macro the same one, and make it behave identically to print!() in how it uses its arguments so panic!("{}") and panic!(123) etc. will no longer compile.

next agenda item: there are 7 open issues on the project group repo of which 3 have been discussed in this meeting, the impl Error for E: Error one and the backtrace proof of concept, and backtrace frames API

@Jakub Duchniewicz will check into this globally consistent error reporting

@Jane Lusby will look into Posix errors (the author)

  • move std::io::Error to core is currently blocked
  • error return traces are blocked by the generic member access RFC

End of meeting.

Participants

People in attendance: Jane Lusby Ashley Mannix Oliver 🐈 Jeremiah Senkpiel DPC Mara Jakub Duchniewicz Sean Chen Charles Ellis O'Riley Jr.