---
# System prepended metadata

title: PEH 2020-11-09 Meeting Agenda
tags: [Minutes, Error Handling]

---

# 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 
