2024-01-31
本文由 ChatGPT(gpt-4-1106-preview) 翻譯。
大家好,歡迎閱讀Rust 本週之星的又一篇文章! Rust 是一種賦能每個人建造可靠且高效軟體的程式語言。 這是對其進展和社群的每週摘要。 想要讓我們提及您的內容?在 Twitter 上標記我們 @ThisWeekInRust 或在 mastodon.social 上標記 @ThisWeekinRust,或者發送我們一個推送請求(pull request)。 想參與進來嗎?我們熱愛貢獻。
Rust 本週之星 是在 GitHub 上公開開發的,並且存檔可以在 this-week-in-rust.org 查看。 如果您在這週的發布中發現任何錯誤,請提交一個 PR。
本週的 crate 是 Apache Iceberg Rust,是用於大型分析資料集的表格式 Rust 實現。
感謝 Renjie Liu 的自我推薦!
一直想對開源項目做出貢獻卻不知道從哪裡開始? 我們每週都會突出一些來自 Rust 社群的任務,為您提供挑選和入門的機會!
其中一些任務可能也有導師可用,訪問任務頁面了解更多訊息。
join_path 中的一個小錯誤,使代碼更優雅MetaPeerClientRef 的測試,以增強 GreptimeDB 的穩定性ockam project ticket 的輸出,讓訊息更加清晰ockam project ticket 和 ockam project enroll 的輸出,並支援 --output json如果您是 Rust 項目的擁有者並且正在尋找貢獻者,请在 這裡 提交任務。
您是一名新手還是經驗豐富的講者,尋找分享一些酷的地方嗎?本節突出了正在規劃中並且接受提交加入其活動做為講者的事件。
本週並沒有提交任何講文徵集通知。
如果您是活動組織者並希望擴大活動的影響範圍,請通過向 TWiR 提交 PR 提交提交網站的鏈接。
上週有 409 個 pull request 被合併
pattern_analysis:允許 ctor_sub_tys 回傳任何他們想要的迭代器pattern_analysis:重用大部分的 DeconstructedPat Debug 實作#[test] 和 #[bench] 引入的閉包中新增 #[coverage(off)]min_exhaustive_patterns 功能閘(feature gate)LoweredTyfor_scope 傳入的是單一範疇dyn 提示的特徵中產生內部編譯錯誤Instrumentor 並平坦化範圍細節化#[automatically_derived] 函式進行樂器化FnOnce shim 時,不要標準化閉包簽名visit_ 方法,就不要直接呼叫 walk_ 函式OPAQUE_HIDDEN_INFERRED_BOUNDrustc_resolve 中手動解析異步閉包..< 時,發出建議IntoDiagnosticArg 中數字的處理#![allow_internal_unstable(..)] 能夠與 stmt_expr_attributes 一起工作NonZero 特徵is_enabledimpl 評估溢出時提供更多上下文destruction_scopesrustc_pattern_analysis 中使用 derivativerustc_codegen_cranelift 進行子樹同步array::from_fn 進行數組初始化assert_unchecked 替代 assume 內建函數project_downcast:對於無居民變體不應觸發內部一致性錯誤(ICE)__cxa_thread_atexit_implintersperse(_with) 的效能HEAP 初始化程序絕不內聯AsyncFn 一系列的特性ErrCodeNonZero*::count_onesstr::Lines::remainderread_dir 與 ReadDir 的行為:檢查要搜索的路徑是否存在From<core::ascii::Char> 實現io:Read::read_to_end() 中的內存不足錯誤Cow<[T]> 實作 From<&[T; N]>str::from_raw_parts[_mut]vec.split_off(0) 特殊情況處理的代碼BTreeMap 游標 APIStdinLock<'_> 上專門處理 Bytesslice_group_byNonZero 別名方向docs(ref):嘗試改進註冊授權文件fix(cli):改進與 cargo 腳本相關的錯誤信息fix(config):淘汰無延伸檔名文件refactor(shell):使用新的華麗 anstyle APIlatest 取代 jobserver 連結的版本號Freshness::Dirty 中不必要的 Optionx86_64-unknown-none-gnu 修正資料佈局to_string_trait_impl lintunnecessary_result_map_or_else lintneedless_return_with_question_mark 與隱式錯誤轉換redundant_closure_for_method_calls 為本地模塊建議相對路徑multiple_crate_versions:為允許的重複Crate添加配置選項never_loop:識別改寫的 try 區塊#[track_caller] 時,避免對冗余閉包進行lintnonminimal_bool 警告的提示manual_retain 警告生成的不正確建議redundant_closure_call的偽陽性問題mismatched_arg_count 中用 adjusted_display_range_new 取代了 adjusted_display_rangeRusty 活動從 2024-01-31 至 2024-02-28 🦀
如果您正在舉辦一個Rust活動,請將它添加到日曆以便在這裡提及。請記住也要添加活動的連結。 若需取得日曆的存取權,請電郵Rust社群團隊。
請查看最新的 r/rust 上的誰在招聘串。
正是這個程序的穩定性,讓我從此以後使用 rust 來做所有事情。社交服務已經達到了近2.5年的100%運行時間。它處理了12.9TB的流量,像2.5年前運行的那天一樣,仍然只使用1.5MB的RAM。資源使用量之低,讓我感動落淚。作為一個來自Java的人,沒有OOM錯誤或GC問題是rust的一個巨大利益,我也看不出自己會使用其他任何編程語言。我非常贊同“一次搭建,但要搭建得正確”的心態,這也是為什麼rust始終是我的選擇。
– reddit 上的 /u/Tiflotin 在 /r/rust 節點的帖子
感謝 Brian Kung 的建議!
《Rust 本週》由以下編輯:nellshamrell、llogiq、cdmistman、ericseppanen、extrawurst、andrewpollack、U007D、kolharsam、joelmarcey、mariannegoldin、bennyvasquez。
電子郵件列表的主辦是由 The Rust Foundation 贊助。