{"podcast":{"title":"Rustacean Station","slug":"rustacean-station","podcast_index_feed_id":714629,"rss_url":"https://rustacean-station.org/podcast.rss","website_url":"https://rustacean-station.org","image_url":"https://rustacean-station.org/images/artwork.jpg","author":"Jon Gjengset","episode_count":183,"summary":"Come journey with us into the weird, wonderful, and wily world of Rust.","last_synced_at":null,"page_url":"https://stenobird.com/podcast/rustacean-station"},"episode":{"title":"What's New in Rust 1.85 through 1.87","slug":"what-s-new-in-rust-1-85-through-1-87","published_at":"2026-01-22T16:55:10+00:00","page_url":"https://stenobird.com/podcast/rustacean-station/what-s-new-in-rust-1-85-through-1-87","show_page_url":"https://stenobird.com/podcast/rustacean-station","url":"https://rustacean-station.org/episode/rust-1.85-1.86-1.87/","audio_url":"https://dts.podtrac.com/redirect.mp3/audio.rustacean-station.org/file/rustacean-station/2026-01-22-rust-1.85-1.86-1.87.mp3","summary":"A deep dive into the technical advancements in Rust versions 1.85 through 1.87. The discussion covers critical changes to async closures, target feature attributes, and supply chain security via Cargo.","meta_description":"Explore the latest Rust updates (1.85-1.87), including async closures, target feature attributes for safe functions, and new Cargo SBOM support.","key_points":["Main idea: Async closures now allow for more intuitive lifetime capturing and different trait implementations compared to previous async-returning closures","Practical takeaway: Use the new target feature attribute on safe functions to allow safe calls within specific CPU feature sets like AVX","Failure mode: The compiler now enforces non-null debug assertions for pointers to prevent common dereferencing errors in debug builds","Main idea: Cargo now supports generating Software Bill of Materials (SBOM) to enhance supply chain security and transparency","Practical takeaway: New Windows terminal integration for Cargo provides visual progress indicators in the taskbar during builds"],"chapters":[{"start_ms":60000,"title":"Rust 1.85 and Async Closures","summary":"An introduction to the 1.85 release and the technical distinction between async closures and closures that return futures."},{"start_ms":395000,"title":"Advanced Lifetime Bounds","summary":"Discussion on higher-rank lifetime bounds and their impact on asynchronous function signatures."},{"start_ms":1045000,"title":"Waker Optimization and Pointer Safety","summary":"Exploring Waker::nop to avoid unnecessary Arcs and new debug assertions for non-null pointer checks."},{"start_ms":1375000,"title":"Const Stability and Float Operations","summary":"Updates on the stabilization of const functions for size and alignment calculations."},{"start_ms":2070000,"title":"Target Feature Attributes","summary":"How the target feature attribute can now be applied to safe functions under specific conditions."},{"start_ms":3075000,"title":"Cargo Enhancements and SBOM","summary":"New capabilities in Cargo for generating SBOMs and improved terminal integration for Windows users."}],"topics":["Rust Programming","Async Closures","Cargo","Software Supply Chain","Systems Programming","Compiler Features","Software Bill of Materials","CPU Instruction Sets"],"duration_seconds":4442,"processing_state":"processed","actions":[{"name":"request_transcript","method":"POST","url":"https://stenobird.com/v1/public/podcasts/rustacean-station/episodes/what-s-new-in-rust-1-85-through-1-87/transcription-requests","description":"Idempotently request low-priority transcript generation for this episode."},{"name":"read_markdown","method":"GET","url":"https://stenobird.com/podcast/rustacean-station/what-s-new-in-rust-1-85-through-1-87.md","description":"Read the agent-friendly Markdown representation of this episode resource."}]}}