2023-11-08
本文由 ChatGPT(gpt-3.5-turbo-1106) 翻譯。
你好,歡迎來到另一期《本周 Rust 新聞》! Rust 是一種能讓每個人都能建立可靠且高效軟體的編程語言。這是對它的進展和社區的每週摘要。 需要提及的事情嗎?在 Twitter 上標記我們 @ThisWeekInRust,或在 mastodon.social 上標記 @ThisWeekinRust,或者提交一個 pull request。 想參與嗎?我們歡迎貢獻。
《本周 Rust 新聞》是在 GitHub 上公開開發的,歷史資料可以在 this-week-in-rust.org 上查看。 如果你發現本週報導中有任何錯誤,請提交一個 PR。
本周推荐的 Crate 是 floem,这是一个具有细粒度响应性的本地 Rust UI 库。
尽管没有收到建议,llogiq 对他的选择还算满意。
一直想要貢獻開源項目,但不知道從哪裡開始嗎?每週我們都會突出 Rust 社區中的一些任務,讓您可以選擇並著手進行!
其中一些任務可能會有導師提供協助,請查看任務頁面以獲取更多資訊。
ockam identity delete(無參數)交互式化(tuify)ockam tcp-outlet delete(無參數)交互式化(tuify)ockam project show(無參數)交互式化(tuify)如果您是 Rust 項目的擁有者,並且正在尋找貢獻者,請在此處提交任務: 指南
上周共合并了 366 个 [拉取请求][merged]
dropck_outlives 检查生成器见证是否needs_dropref和mut进行模式标识重命名check_type_bounds时给参数环境加入所有的 RPITITs 在 GAT 边界上move關鍵字的Span添加到 HIR 中partition_equal中避免不必要的比較i1常量值的死代码coverage::Errorrustc_type_ir中衍生TyEncodable/TyDecodableop_to_const 中不再斷言-stdlib=libc++construct_generic_bound_failure 的後備
把 "fix excessive initialization and reads beyond EOF in io::copy(_, Vec<u8>) specialization" 翻译成中文是 "修复 io::copy(_, Vec<u8>) 特化中的过多初始化和超出 EOF 的读取"。把 "fix incorrect trait bound restriction suggestion" 翻译成中文是 "修复不正确的 trait 约束建议"。
把 "fix order of implementations in the 'implementations on foreign types' section" 翻译成中文是 "修复 '在外部类型上的实现' 部分的实现顺序"。
把 "guarantee representation of None in NPO" 翻译成中文是 "保证 NPO 中 None 的表示"。
把 "guarantee that char has the same size and alignment as u32" 翻译成中文是 "保证 char 和 u32 具有相同的大小和对齐"。
把 "hint optimizer about try-reserved capacity" 翻译成中文是 "提示优化器关于尝试保留的容量"。
把 "inline and remove create_session" 翻译成中文是 "内联并移除 create_session"。
把 "make sure that predicates with unmentioned bound vars are still considered global in the old solver" 翻译成中文是 "确保在旧求解器中,未提及绑定变量的谓词仍然被视为全局的"。
把 "make the randomize feature of rustc_abi additive" 翻译成中文是 "使 rustc_abi 的随机化特性具有叠加性"。
把 "match usize/isize exhaustively with half-open ranges" 翻译成中文是 "使用半开范围全面地匹配 usize/isize"。 把使用前的不透明类型的存储空间预填充 https://github.com/rust-lang/rust/pull/117439
在 rustc_on_unimplemented 中漂亮打印 Fn 特质
https://github.com/rust-lang/rust/pull/116439
从函数定义中恢复缺失的参数列表 https://github.com/rust-lang/rust/pull/117298
重构:将需求中的建议功能移到建议当中 https://github.com/rust-lang/rust/pull/117401
移除 Android 上链接 unwinder 的过时支持 https://github.com/rust-lang/rust/pull/117504
移除 -Z symbol-mangling-version 别名的支持
https://github.com/rust-lang/rust/pull/117509
移除编译器插件的支持 https://github.com/rust-lang/rust/pull/116412
用 assume 语句替换开关到不可及 https://github.com/rust-lang/rust/pull/113970
为 riscv32*-esp-espidf 设置 max_atomic_width 为 32
https://github.com/rust-lang/rust/pull/117307
将 const_caller_location 从查询转换为挂钩
https://github.com/rust-lang/rust/pull/117388
FxIndexSetrustc_type_ir 中为 Clone/PartialOrd/Ord/Hash 使用衍生宏env! 结果时使用正确的范围non_exhaustive_omitted_patterns lint 等级设置为匹配分支的用户const_maybe_uninit_zeroed 和 const_mem_zeroedfile_set_timesswitch_stdout_totransmute_copy 添加 track_caller<Box<E> as Error>::provide 委派給 <E as Error>::provideoffset_of! 中的 enum 變體offset_of 中對 enum 進行功能閘控Waker::clone_from 以避免不必要地克隆 Wakerfeat(trim-paths): 為構建腳本設置環境變量 CARGO_TRIM_PATHS-Ztrim-paths (RFC #3127)trim-pathsunused_enumerate_index: 在空元组上不再產生 ICEunused_enumerate_index lintdbg_macro 的分號範圍計算enum_variant_names lint 依賴順序的問題get_first 對 VecDeque 的偽陽性問題unnecessary_fallible_conversionsgenerate_mut_trait_impl 辅助功能2023年11月8日至2023年12月6日之间的 Rusty 活动 🦀
如果您正在举办 Rust 活动,请将其添加到日历中,以便在此处提及。请记得添加活动链接。发邮件给 Rust 社区团队以获得访问权限。
请查看最新的 r/rust 的招聘帖子
為了使 Binder 繼續滿足 Android 的需求,我們需要更好的方式來管理(和減少!)複雜性,同時不增加風險。
最大的改變顯然是選擇的程式語言。我們決定使用 Rust,因為它直接應對了我們在過去幾年中在 Binder 中面臨的幾個挑戰。
– Alice Ryhl 在 Linux 核心郵件列表上的帖子
感謝 Vincent de Phily 的建議!
《This Week in Rust》由以下人員編輯:nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin, bennyvasquez.
郵件列表托管由 Rust 基金會 贊助