Rust Release Train 1.75

  Рет қаралды 11,125

chris biscardi

7 ай бұрын

Rust 1.75 includes Async functions in Traits!
Rust operates on a 6 week release cycle. Every 6 weeks a "release train" leaves the station and begins its journey to being the next stable release.
Code: github.com/rust-adventure/rust-release-train/tree/ea21e81a85c05de2b02e9d2a3f5ddc59fe08c2cf/versions/v1.75/examples
Rust Release Post: blog.rust-lang.org/2023/12/28/Rust-1.75.0.html
RPITIT Post: blog.rust-lang.org/2023/12/21/async-fn-rpit-in-traits.html
What is a Release Train? -- doc.rust-lang.org/book/appendix-07-nightly-rust.html#choo-choo-release-channels-and-riding-the-trains
## Chapters
00:00 Rust 1.75!
00:15 code layout optimizations for rustc
00:41 Option::as_slice
02:14 exhaustive half-open usize/isize ranges
03:17 FileTimes
04:35 Return Position Impl Trait in Trait (RPITIT)
06:19 async functions in traits!
08:29 Downsides to RPITIT
09:24 new trait_variant crate

Пікірлер: 17
@samuelgunter
@samuelgunter 7 ай бұрын
for those who are wondering what "release train" means and are too afraid to ask (or never questioned it), "The release train is a technique for coordinating releases across multiple teams or components that have runtime dependencies. All releases happen on a fixed and reliable schedule regardless of whether all expected features are ready (the train doesn't wait for you - if you miss it you wait for the next one)" -- ThoughtWorks
@chrisbiscardi
@chrisbiscardi 7 ай бұрын
Rust specifically operates on a 6 week release cycle. A nightly release goes out every day, and a beta release is branched every 6 weeks. If the beta release doesn't have any major regressions, it is promoted to stable six weeks later. For example, the release that will go out on Feb 8th has already been branched off on December 22nd. doc.rust-lang.org/book/appendix-07-nightly-rust.html#choo-choo-release-channels-and-riding-the-trains
@friendlywavingrobot
@friendlywavingrobot 7 ай бұрын
chris is the hardest working rust reporter out there. Great vid!
@mikkelens
@mikkelens 7 ай бұрын
The bit at the end of the blog post detailing future stabilization of the parallelized compiler front end makes me quite excited. I am happy to finally see RPITIT/AFIT a reality for crates, just not sure how this will look ergonomically in "public" contexts (between crates, which is warned against as of now) in the future.
@houstonbova3136
@houstonbova3136 7 ай бұрын
This feels like a lot of really nice quality of life improvements.
@kira.herself
@kira.herself 7 ай бұрын
rust gets better by each day yippee
@jacekm.1789
@jacekm.1789 7 ай бұрын
thanks for the update! as always useful!
@ravveni
@ravveni 7 ай бұрын
awesome summary! thanks!
@lixou
@lixou 7 ай бұрын
Waiting for the summary Video all day long 🎉
@Roms8313
@Roms8313 7 ай бұрын
this is HUGE 😮❤
@ducky_futures
@ducky_futures 7 ай бұрын
Can you pretty please teach us how to make custom rounds? Like those you see on prop hunt with no loading screen between rounds. Here is what I found on the UEFN dev site. Thank you! “I “Fake” rounds in multiple of my maps for the very reason of how bad the round change over time is. (You will literally loose players as they wait for the black screen to change over) As long as you are clear on when the round will end (Time based / Objective based / etc) then I feel you can do better then the round system in place. When I have things that need to get reset this is how I handle it: My GameManager (Verse device) will include a ResetTrigger editable variable that I Trigger in verse when I’m ready to do clean up. Then my devices I either want to disable or enable, item removers that need to take player items, portals that need to relocate players, all listen to the ResetTrigger. This simplifies the control flow of the state of your game loop. You will of course have to handle resetting other things in an appropriate way as well. For example some of my verse devices will listen to a reset trigger (or have a Reset function that gets called by some other device directly) then the device will do something like clear an array or change a variable the is referenced to a player in a map, etc.”
@zed5790
@zed5790 7 ай бұрын
Please make a video on rust Loco Framework.
@Saturate0806
@Saturate0806 7 ай бұрын
why did you call await on fetch in main if the last function call inside async fetch was an await?
@chrisbiscardi
@chrisbiscardi 7 ай бұрын
The trait function is defined as async, which desugars to a function that returns `impl Future` regardless of if the last value in the function body is a "regular" value or not. The full return type in this case is impl Future So you await on that Future in main when you call fetch().
@BrazenNL
@BrazenNL 7 ай бұрын
Early 360p crowd, represent …
@chrisbiscardi
@chrisbiscardi 7 ай бұрын
oof, haha. Hopefully its not too bad. Dashboard says 40 min left for the hd encode and 60 min left for the 4k encode.
@BrazenNL
@BrazenNL 7 ай бұрын
@@chrisbiscardiAll in HD now. Thanks!
Pleased the disabled person! #shorts
00:43
Dimon Markov
Рет қаралды 28 МЛН
Пранк пошел не по плану…🥲
00:59
Саша Квашеная
Рет қаралды 6 МЛН
Llegó al techo 😱
00:37
Juan De Dios Pantoja
Рет қаралды 57 МЛН
World’s Largest Jello Pool
01:00
Mark Rober
Рет қаралды 98 МЛН
Look, this is the 97th generation of the phone?
0:13
Edcers
Рет қаралды 7 МЛН
Как бесплатно замутить iphone 15 pro max
0:59
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 8 МЛН
#samsung #retrophone #nostalgia #x100
0:14
mobijunk
Рет қаралды 13 МЛН
Что делать если в телефон попала вода?
0:17
Лена Тропоцел
Рет қаралды 3,2 МЛН