~/talk

Reasoning about Rust: an introduction to Rustdoc's JSON format

Talkat EuroRust 2023 · 2023-10-12..10-13· [rust]
slides:none on file

Rustdoc's JSON format gives a versioned, machine‑parsable schema of crate APIs so tools can compare releases, query exposed dependency types, and generate code. Examples include Rustdoc's JSON format driving cargo-semver-checks to diff two JSONs and it already found several semver violations in popular crates; another tool checks which dependency types leak into a public API and the AWS SDK team uses it. Limitations: no function bodies, complex trait resolution, and the format is unstable but headed toward stabilization.

AI-written summary · about

  1. 0:00Introduction
  2. 1:03Adopting Rust at scale
  3. 4:51Compiler analysis limits
  4. 6:13Macros code analysis limits
  5. 10:52Compiler internals aren't solution
  6. 12:19Rustdoc JSON format
  7. 17:21Versioned JSON advantages
  8. 18:03Tools using Rustdoc JSON
  9. 21:15Rustdoc JSON limitations
  10. 23:19Future of Rust tooling
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.