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

Commit 692fc14

Browse files
authored
Merge pull request #17 from seanchen1991/master
Add 2020-10-12 Meeting Notes
2 parents 34ce688 + 54e4c7d commit 692fc14

File tree

1 file changed

+142
-0
lines changed

1 file changed

+142
-0
lines changed

meetings/2020-10-12.md

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# PEH Meeting Agenda - 2020-10-12
2+
3+
###### tags: `Error Handling` `Minutes`
4+
5+
- [2020-09-28 Meeting Minutes](https://hackmd.io/th5k9_pBRBGmpgnFWJzUHw?both)
6+
7+
## Action Items
8+
9+
- Implement trait based proof of concept for `Backtrace` in `core` (Jane Lusby)
10+
- Setup `The Rust Error Book` (must-compute, Charles Ellis O'Riley Jr, and Jakub Duchniewicz)
11+
- Draft a [blog post](https://hackmd.io/GMLcORX_R7W4de0ZryDIxg?view) detailing the long-term vision of what this group thinks Rust error handling should look like (Sean Chen)
12+
- Status Updates on Tracked issues (What's the current status, what are the next steps, what are the blockers, is it actively being worked on)
13+
- [Generic Member Access](https://github.com/rust-lang/rfcs/pull/2895) (Jane Lusby)
14+
- [Fix the error trait / Stabilizing Backtrace](https://github.com/rust-lang/rust/issues/53487) (Jane Lusby)
15+
- [stabilizing error source iterators](https://github.com/rust-lang/rust/issues/58520) (Oliver)
16+
- [Box error alias](https://github.com/rust-lang/rfcs/pull/2820) (unassigned)
17+
- [stabilizing Error::type_id](https://github.com/rust-lang/rust/issues/60784) (Jakub Duchniewicz)
18+
- [PanicInfo::message](https://github.com/rust-lang/rust/issues/66745) (DPC)
19+
- [nicer assert messages](https://github.com/rust-lang/rust/issues/44838) (Charles Ellis O'Riley Jr.)
20+
- Moving forward with adding an iterator API to `backtrace` (Sean Chen)
21+
22+
## Agenda Items
23+
24+
- Review action items from last meeting
25+
- Review open issues on project group repository
26+
- Anything to buble up to the Libs meeting?
27+
28+
# Meeting Minutes
29+
30+
## Participants
31+
32+
People in attendance:
33+
- Jane Lusby
34+
- Sean Chen
35+
- Ashley Mannix
36+
- Kyle Strand
37+
- Lance Zhang
38+
- Jeremiah Senkpiel
39+
- Jakub Duchniewicz
40+
- DPC
41+
- oliver
42+
- Charles Ellis O'Riley Jr.
43+
- must-compute
44+
- Jubilee Young
45+
46+
## Backtrace in core
47+
48+
- So far the implementation is moving forward fine, but there are questions around the hooks
49+
- Not clear how to set them up with a default in `no_std` so users don't _need_ to write one like `#[panic_handler]`
50+
- Current work in progress [here](https://github.com/rust-lang/rust/pull/77384)
51+
- There's enough sketched out that it shouldn't be a blocker for stabilizing `backtrace` anymore
52+
53+
## The Rust Error Book
54+
55+
- We now have a folder in the `project-error-handling` repository for content
56+
57+
## Log-term project group vision and goals
58+
59+
- Draft here: https://hackmd.io/GMLcORX_R7W4de0ZryDIxg?view
60+
61+
## Generic member access RFC
62+
63+
- There's an updated API in `object-provider` that the RFC would like to use
64+
- Once the content is updated it needs some Libs input
65+
- There could be some tie in with `tide`'s `Response` type?
66+
67+
## Fix the `Error` trait / Stabilizing `backtrace`
68+
69+
- Covered in the earlier discussion on _Backtrace in core_
70+
- There could be some documentation work to do on `backtrace`
71+
72+
## Stabilizing `Error` source iterators
73+
74+
- stabilizing error source iterators
75+
- trait objects vs. provided methods
76+
- [stabilization report 2020-09-14](https://github.com/rust-lang/rust/issues/58520#issuecomment-691982191)
77+
- unergonomic use-cases ---> difficulties stabilizing
78+
- bugs
79+
- blocked on [#53487](https://github.com/rust-lang/rust/issues/53487)
80+
- [#75180](https://github.com/rust-lang/rust/pull/75180) might feed into this too
81+
- related crate [`error-chain`](https://crates.io/crates/error-chain)
82+
83+
## Stabilizing `Error::type_id`
84+
85+
- Several possible approaches, but all are waiting for other stabilizations/RFCs
86+
- #[marker] trait stabilization: https://github.com/rust-lang/rust/issues/29864
87+
- negative trait impls
88+
- dynamic vtable type_id (like C++ typeid keyword) https://github.com/rust-lang/rfcs/pull/2580
89+
- final keyword -> no overriding of trait any more
90+
- new trait TypeInfo https://github.com/rust-lang/rfcs/pull/2738
91+
- Not clear it's something we want to stabilize
92+
- Looks like a rabbit hole we don't want to go down right now
93+
94+
## `PanicInfo::message`
95+
96+
- No progress made here
97+
98+
## Nicer Assert Messages
99+
100+
- [RFC](https://github.com/rust-lang/rfcs/pull/2011) has been approved, with no implementation started yet
101+
- Does this need to be implemented using the compiler's built-in proc macros, or can it be done as an external crate using `pro-macros` and `syn`?
102+
- Need external thoughts/mentorship on this question
103+
104+
## Iterating over `Backtrace` frames
105+
106+
- Just starting out, so there hasn't been much discussion yet
107+
- The `backtrace` crate has a `frames()` fn that already exposes its individual frames
108+
- We could propose basically the same thing for `std`'s `Backtrace` type
109+
110+
# Outcomes
111+
112+
## Backtrace in core
113+
114+
- @KodrAus to ping https://github.com/rust-lang/rust/pull/72981 and raise at Libs meeting RE `backtrace` stabilization
115+
116+
## Long-term project group vision and goals blog post
117+
118+
- @Jane Lusby @Jakub Duchniewicz @KodrAus to review draft content
119+
120+
## Generic member access RFC
121+
122+
- @Jane Lusby to incorporate changes from `object-provider`
123+
- @KodrAus to review RFC and ping Libs
124+
125+
## Stabilizing `Error` source iterators
126+
127+
- Looks like many parts of this are stuck on fixing the `Error` trait, so our efforts should be focused here to push this forward
128+
129+
## Stabilizing `Error::type_id`
130+
131+
- Putting this one on the back burner
132+
133+
## Nicer Assert Messages
134+
135+
- Look into whether we can implement an external POC for this ourselves
136+
- Need external advice/mentorship (possibly from t-libs-impl) before we can get started on it
137+
138+
## Iterator API on Backtrace
139+
140+
- @Sean Chen to look more into this initiative
141+
- Export an identical `fn frames(&self) -> &[BacktraceFrame]` to `std`
142+
- Add it as an unstable API to `Backtrace` without an RFC to start with (just an FCP on the implementation itself)

0 commit comments

Comments
 (0)