# PEH 2020-11-09 Meeting Agenda
###### tags: `Error Handling` `Minutes`
- [2020-10-26 Meeting Minutes](https://hackmd.io/@rust-libs/rJ6aitNOw)
## 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)
- Move forward with adding an Error impl for `&impl Error` (Ashley Mannix)
- Create an FCP on the existing PR
- Add guidance for using &dyn Error + 'static and impl Error + Send + Sync + 'static for borrow and owned errors respectively
- Review the "Fix the error trait" tracking issue to figure out next steps (Oliver + Ashley Mannix)
- Review the panic plan rfc (Jane Lusby)
- reach out to the author of the error codes issue (Jane Lusby)
- Discuss universally consistent error reporting (Jane Lusby, Jakub Duchniewicz, and Jeremiah Senkpiel)
- Post long term plan blog post (Sean Chean & Jane Lusby)
- Begin writing chapters for The Rust Error Book (unassigned)
- Resolve blockers in the backtrace stabilizition PR (Ashley Mannix)
## Agenda Items
- Review action items from last meeting
- Review tracked issues in our [Project Board](https://github.com/rust-lang/project-error-handling/projects/1)
- [RFC#2580 related to 'Stabilizing `Error::type_id`'](https://hackmd.io/1Fq9TcAQRWa4_weWTe9adA)
- Anything to bubble up to the Libs meeting?
- Review `The Rust Error Book` looking to add initial content
- 2021 Rust Edition
- postponed?
- Discuss meeting time
# Meeting Minutes
Called to order at 13:00 PST
## Attendees
- Jane Lusby
- Sean Chen
- Oliver
- Ashley Mannix
- Mara
- Jakub Duchniewicz
- DPC
## Progress on Backtrace in Core [Jane Lusby]
- No progress on this since last time
## Update Generic Member Access API [Jane Lusby]
- Reviewed changes made by Nika
- We should be using rustc errors as an example in the RFC
- Universal reporting is still messy and depends on features that don't exist yet
- RFC for this is basically complete with some pending updates including
examples related to compiler error reporting
## Adding an Error impl for `&impl Error` [Ashley Mannix]
- In final comment period. Will go in 1.49.0 when it's ready to go.
- starting patching for related libraries
## Review the “Fix the error trait” tracking issue [Oliver + Ashley Mannix]
- No progress on this
## Review the panic plan rfc [Jane Lusby]
- Now waiting for the FCP checkboxes; four more to go
## Reach out to the author of the error codes issue [Jane Lusby]
- Didn't get to this
## Post long term plan blog post [Sean Chean & Jane Lusby]
- Haven't put in suggested changes yet.
## Begin writing chapters for The Rust Error Book [unassigned]
- Put out a call for a collection of references
- Are we targeting 2021 edition?
- Not particularly; shouldn't have any major breaking changes
- Besides unifying `panic`, shouldn't have anything that interacts with editions
- Universal error reporting _might_ become something that involves requiring a breaking change, but too nebulous to know at the moment
## Resolve blockers in the backtrace stabilizition PR [Ashley Mannix]
- Different implementions for panics and errors since the panic backtrace resolver can resolve frames in the presence of memory errors.
- Code between the two implementations can be shared, though this probably doesn't have implications on the API.
- Unlisted concern in FCP
- Blocked on Amanieu having time to look through the recent discussion to mark concern as resolved
## Discuss universally consistent error reporting [Jane Lusby, Jakub Duchniewicz, and Jeremiah Senkpiel]
- Trying to find a way to introduce a "Reporter" that handles displaying `E: Error` objects and additionally captures context relevant to those errors.
- Maybe extend this type to also handle `PanicInfo` objects
- Should naturally fit the design of the Error trait
- `PanicInfo` already has this handled by the hook from `set_hook`
- Unification will be a challenge
## Backtrace Frames Method [Sean Chen]
- Started on this, though need to continue working through details from @KodrAus
- Suggestion to use a wrapper to return a borrow to data behind a `Mutex`
- @KodrAus -- for safety should materialize a `Vec` behind a wrapper
- additional suggestions forthcoming
## Nicer Assert Messages [Charles Ellis O'Riley Jr.]
- Charles not in attendance today; punt this to next meeting
## `PanicInfo::message` RFC [DPC]
- `de-vri-es` doing some work related to this
- Trying to add some kind of `AssertionInfo` to a `PanicInfo` that the test crate can use to displays things more nicely without requiring support for colors in std
## `Error::type_id` [unassigned]
- Should enable a way to have function specialization such that `type_id` would be specialized for every type
- Priority: low
## Changing the Meeting Time going forward
- SIMD meeting starts right after this one
- Ideally, shift meeting back an hour for Daylight Savings and call it a day
- If not, might have to do another poll for meeting times
- Brought up in last week's SIMD meeting; didn't seem like anybody have issues with shifting it
# Todo
## Blog post coming soon
- goals to be run by project group before starting something on internals
## Update Object Provider API [Jane Lusby]
- Add Nika's changes to RFC @2aetCAHHS5yPrDQIgqGo2Q
## Adding an Error impl for `&impl Error` [Ashley Mannix]
- We can start patching libraries that it will break to get it ready for 1.49.0 @KodrAus
## Discuss universally consistent error reporting [Jane Lusby, Jakub Duchniewicz, and Jeremiah Senkpiel]
- Draft a blog post laying this out @2aetCAHHS5yPrDQIgqGo2Q
## Review "The Rust Error Book" to add additional content
- Create an issue and gather existing resources to use as references for the book @2aetCAHHS5yPrDQIgqGo2Q
## Resolve blockers in the backtrace stabilizition PR [Ashley Mannix]
- Reach out to Amanieu to get their concerns resolved @KodrAus