Warning
This post was published 112 days ago. The infomation described in this article may have changed.
Hello and welcome to another issue of This Week in Rust! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tag us at @ThisWeekInRust on Twitter or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.
This Week in Rust is openly developed on GitHub and archives can be viewed at this-week-in-rust.org. If you find any errors in this week's issue, please submit a PR.
This week's crate is kanata, a keyboard remapper for Linux and Windows.
Thanks to Aleksey Kladov for the suggestion!
Please submit your suggestions and votes for next week!
Always wanted to contribute to open-source projects but did not know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!
Some of these tasks may also have mentors available, visit the task page for more information.
MerchantKeyStore
--yes
flag to delete
commands to prevent unintentional deletionsockam node create
project path not found
errorIf you are a Rust project owner and are looking for contributors, please submit tasks here.
392 pull requests were merged in the last week
x86_64
Apple targetsrepr(transparent): transform_ty
: unexpected Alias(Projtransform_ty
: unexpected GeneratorWitness(Bi…linkedProjects
in rust_analyzer_settings
OsStr
bytesConstGoto
and SeparateConstSwitch
passes by defaultScalarReplacementOfAggregates
in optimized buildsunreachable_pub
lintstatic_candidates
before reportBuffer
allocations when &mut fmt::Write
can be used directlyConstParamTy
lib
folderOption::as_deref(_mut)
on type mismatch in option combinator if it passes typeckself_ty
clippy::cast_ref_to_mut
lintclippy::invalid_utf8_in_unchecked
lintunchecked_div
/_rem
to MIR's BinOp::Div
/Rem
rustc_driver.so
when debuginfo is enabledExtendElement
, ExtendWith
, extend_with
[T]::zip(_)
TrustedStep
require Copy
offset_of!
: don't require type to be Sized
Sized
in offset_of!
utf16_to_utf8
for zero length stringsRegex::new(r"(?-u:\B)")
fail againadd
or install
commandbuild.jobs
allow_attributes
, allow_attributes_without_reason
: Ignore attributes from procedural macrosmanual_let_else
: support struct
patternsnonminimal_bool
fix double notptr_cast_constness
: Only lint on casts which don't change typeunnecessary_lazy_eval
: don't lint on types with deref impluseless_conversion
: pluralize if there are multiple .into_iter()
callswildcard_imports
Modules that contain prelude
are also allowedcfg(features = ...)
to_xx_bytes
and from_xx_bytes
clippy.toml
error messagesunnecessary_cast
on raw pointers as wellfrom_over_into
if the target type contains a Self
referenceredundant_clone
to nursery
explicit_into_iter_fn_arg
missing_fields_in_debug
unused-mut
false positive for Box
convert_named_struct_to_tuple_struct
render_const_scalar
need-mut
for it'_
for lifetime generics in HirDisplay
This week was a bunch of improvements, largely driven by cutting std debuginfo in [#110221] and a few MIR or codegen optimizations. No pure regressions landed this week!
Triage done by @simulacrum. Revision range: 1221e43b..adc719d
Summary:
0 Regressions, 1 Improvements, 12 Mixed; 2 of them in rollups
79 artifact comparisons made in total
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
Every week, the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.
select_nth_unstable
TryFrom<&OsStr>
for &str
const_cstr_methods
[]
An important step for RFC implementation is for people to experiment with the implementation and give feedback, especially before stabilization. The following RFCs would benefit from user testing before moving forward:
If you are a feature implementer and would like your RFC to appear on the above list, add the new call-for-testing
label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature
need testing.
Rusty Events between 2023-06-07 - 2023-07-05 🦀
If you are running a Rust event please add it to the calendar to get it mentioned here. Please remember to add a link to the event too. Email the Rust Community Team for access.
Please see the latest Who's Hiring thread on r/rust
(...) Rust developers usually are not just looking for "less buggy".
They are addicted to the clicky sound of legos.
Thanks to Jan Riemer for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin, bennyvasquez.
Email list hosting is sponsored by The Rust Foundation
🏷️ Rust_feed