Update all non-major dependencies #209
Open
andras
wants to merge 1 commit from
renovate/all into main
pull from: renovate/all
merge into: andras:main
andras:main
andras:renovate/minimatch-11.x
andras:renovate/eslint-10.x
andras:renovate/cspell-10.x
andras:renovate/concurrently-10.x
andras:renovate/commander-15.x
andras:renovate/sentry-browser-11.x
andras:renovate/actions-upload-artifact-7.x
andras:renovate/actions-setup-node-7.x
andras:renovate/actions-checkout-7.x
andras:asch/fix-again-2
andras:asch/fix-again
andras:ci/shared-actions
andras:asch/fix-everything
andras:asch/cli-and-plugin-updates
andras:asch/history-ui
andras:asch/remove-gh
andras:asch/improve-det-tests
andras:asch/deterministic-tests
andras:asch/split/02-server-foundation
andras:asch/split/12-deterministic-tests-and-rest
andras:asch/split/11-history-ui
andras:asch/split/10-sync-operations
andras:asch/split/09-sync-client-file-ops
andras:asch/split/08-sync-client-services
andras:asch/split/07-sync-client-utils
andras:asch/split/06-api-types
andras:asch/split/05-server-websocket
andras:asch/split/04-server-rest
andras:asch/split/03-server-database
andras:asch/smart-create
andras:asch/taskfiles
andras:dependabot/npm_and_yarn/docs/npm_and_yarn-01492243ae
andras:dependabot/cargo/sync-server/cargo-2a37c962ae
andras:asch/better-docs
andras:dependabot/npm_and_yarn/frontend/minimatch-10.1.1
andras:dependabot/npm_and_yarn/frontend/typescript-eslint-8.48.1
andras:dependabot/npm_and_yarn/frontend/webpack-5.103.0
andras:dependabot/npm_and_yarn/frontend/sentry/browser-10.28.0
andras:asch/dead-locks
andras:dependabot/docker/sync-server/rust-1.92-slim-trixie
andras:asch/fix-ci
andras:asch/qol
andras:asch/refactor
andras:dependabot/cargo/sync-server/axum-0.8.7
andras:asch/fix-tests
andras:dependabot/cargo/sync-server/axum-extra-0.12.2
andras:asch/better-tests
andras:asch/saturday
andras:dependabot/cargo/sync-server/chrono-0.4.42
andras:asch/explore
andras:dependabot/cargo/sync-server/ts-rs-11.1.0
andras:asch/compact-reconcile
andras:asch/compact-http
andras:dependabot/cargo/sync-server/clap-verbosity-flag-3.0.4
andras:dependabot/npm_and_yarn/frontend/npm-check-updates-19.1.2
andras:asch/logs
andras:asch/local-cli
andras:asch/deletion
andras:asch/test
andras:asch/local
andras:asch/multi-arch
andras:asch/node-tests
andras:asch/fix-e2e
andras:asch/fix-main
andras:asch/extract-reconcile
andras:asch/reconcile
andras:asch/show-cursors
andras:asch/cursors
andras:asch/websocket
andras:asch/fixes
No reviewers
Labels
Clear labels
bug
Something isn't working
dependencies
Pull requests that update a dependency file
docker
Pull requests that update docker code
documentation
Improvements or additions to documentation
duplicate
This issue or pull request already exists
enhancement
New feature or request
good first issue
Good for newcomers
help wanted
Extra attention is needed
invalid
This doesn't seem right
javascript
Pull requests that update javascript code
question
Further information is requested
rust
Pull requests that update rust code
wontfix
This will not be worked on
No labels
bug
dependencies
docker
documentation
duplicate
enhancement
good first issue
help wanted
invalid
javascript
question
rust
wontfix
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set
Reference
andras/vault-link!209
Loading…
Reference in a new issue
No description provided.
Delete branch "renovate/all"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
5.0.19→5.0.381.0.100→1.0.1040.7.4→0.8.00.9.6→0.12.00.11.0→0.16.00.22.1→0.23.00.4.41→0.4.454.5.38→4.6.79.2.1→9.2.59.3.2→9.8.09.38.0→9.39.54.1.4→4.4.10.3.31→0.3.340.4.28→0.4.3510.0.1→10.2.619.1.1→19.6.61.11.0→1.14.43.6.2→3.9.100.9.0→0.10.0^0.8.0→^0.14.0^0.11.0→^0.14.00.8.0→0.14.01.12.2→1.13.11.89.0→1.99.11.92.0→1.99.11.91-slim-trixie→1.99-slim-trixie1.0.228→1.0.2291.0.145→1.0.1540.8.6→0.9.02.0.17→2.0.211.48.0→1.54.10.6.1→0.7.00.1.41→0.1.440.3.20→0.3.232.8.1→2.9.15.8.3→5.9.38.41.0→8.72.11.16.0→1.29.03.5.24→3.5.44Release Notes
streetsidesoftware/cspell-dicts (@cspell/dict-en-gb)
v5.0.38Compare Source
Updates and Bug Fixes
Dependencies
v5.0.36Compare Source
Updates and Bug Fixes
Dependencies
v5.0.35Compare Source
Updates and Bug Fixes
v5.0.34Compare Source
Updates and Bug Fixes
v5.0.33Compare Source
Updates and Bug Fixes
Dependencies
v5.0.32Compare Source
Updates and Bug Fixes
Dependencies
v5.0.31Compare Source
Updates and Bug Fixes
Dependencies
v5.0.30Compare Source
Updates and Bug Fixes
Dependencies
v5.0.29Compare Source
Updates and Bug Fixes
Dependencies
v5.0.27Compare Source
Updates and Bug Fixes
Dependencies
v5.0.26Compare Source
Updates and Bug Fixes
Dependencies
v5.0.25Compare Source
Dependencies
v5.0.24Compare Source
Dependencies
v5.0.23Compare Source
Updates and Bug Fixes
Dependencies
v5.0.22Compare Source
Dependencies
v5.0.21Compare Source
Dependencies
v5.0.20Compare Source
Updates and Bug Fixes
Dependencies
dtolnay/anyhow (anyhow)
v1.0.104Compare Source
syndev-dependency to version 3v1.0.103Compare Source
Error::downcast_mut(#451, #452)v1.0.102Compare Source
v1.0.101Compare Source
tokio-rs/axum (axum)
v0.8.9Compare Source
WebSocketUpgrade::{requested_protocols, set_selected_protocol}for more flexible subprotocol selection (#3597)v0.8.8: axum v0.8.8Compare Source
Router::route_layer(#3567)v0.8.7: axum v0.8.7Compare Source
Send/Syncbounds onRouterAsService,RouterIntoService(#3555)v0.8.6Compare Source
v0.8.5: axum v0.8.5Compare Source
OptionalFromRequestforMultipart(#3220)Location::{status_code, location}middleware::ResponseAxumBodyLayerfor mapping response body toaxum::body::Body(#3469)impl FusedStream for WebSocket(#3443)ssemodule andSsetype no longer depend on thetokiofeature (#3154)Redirects constructors is not a valid header value, instead of panicking on construction, theIntoResponseimpl now returns an HTTP 500, just likeJsondoes when serialization fails (#3377)v0.8.4: axum v0.8.4Compare Source
Router::reset_fallback(#3320)WebSocketUpgrade::selected_protocol(#3248)servewithout graceful shutdown (#3129)v0.8.3: axum v0.8.3Compare Source
From<Bytes>forMessage(#3273)OptionalFromRequestforJson(#3142)OptionalFromRequestforExtension(#3157)WebSocketUpgrade(#3178)v0.8.2: axum v0.8.2Yanked from crates.io due to unforeseen breaking change, see #3190 for details
OptionalFromRequestforJson(#3142)OptionalFromRequestforExtension(#3157)statusfunction of rejections aconstfunction, suchas
JsonRejection,QueryRejectionandPathRejection(#3168)v0.8.0: axum v0.8.0Compare Source
since rc.1
axum::extract::ws::Messagenow usesBytesin place ofVec<u8>,and a new
Utf8Bytestype in place ofString, for its variants (#3078)OptionalFromRequestPartsimpl forQuery(#3088)tokio-tungsteniteto 0.26 (#3078)serde_path_to_errorto report fields that failed to parse (#3081)full changelog
You can also read the blog post on tokio
Note: there are further relevant changes in axum-core's changelog
/:singleand/*manyto/{single}and/{*many}; the old syntax produces a panic to avoid silent change in behavior (#2645)Syncfor all handlers and services added toRouterandMethodRouter(#2473)Pathextractor deserializers now check that the number of parameters matches the tuple length exactly (#2931)Hostextractor toaxum-extra(#2956)WebSocket::close. Users should explicitly send close messages themselves. (#2974)servegeneric over the listener and IO types (#2941)Serve::tcp_nodelayandWithGracefulShutdown::tcp_nodelay.See
serve::ListenerExtfor an API that let you set arbitrary TCP stream properties. (#2941)Option<Path<T>>no longer swallows all error conditions,instead rejecting the request in many cases; see its documentation for details (#2475)
axum::extract::ws::Messagenow usesBytesin place ofVec<u8>,and a new
Utf8Bytestype in place ofString, for its variants (#3078)serde_json::RawValueinEvent::json_data(#2992)content-lengthbefore middleware.This allows middleware to add bodies to requests without needing to manually set
content-length(#2897)tokio-tungsteniteto 0.26 (#3078)serde_path_to_errorto report fields that failed to parse (#3081)method_not_allowed_fallbackto set a fallback when a path matches but there is no handler for the given HTTP method (#2903)NoContentas a self-described shortcut forStatusCode::NO_CONTENT(#2978)get(ws_endpoint)handlers toany(ws_endpoint)(#2894)MethodFilter::CONNECT,routing::connect[_service]andMethodRouter::connect[_service](#2961)FailedToDeserializePathParams::kindenum with (ErrorKind::DeserializeError). This new variant captures bothkey,value, andmessagefrom named path parameters parse errors, instead of only deserialization error message inErrorKind::Message. (#2720)murar8/axum_typed_multipart (axum_typed_multipart)
v0.16.8Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.7...0.16.8
v0.16.7Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.6...0.16.7
v0.16.6Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.5...0.16.6
v0.16.5Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.4...0.16.5
v0.16.4Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.3...0.16.4
v0.16.3Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.2...0.16.3
v0.16.2What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.16.0...0.16.2
v0.16.0Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.15.1...0.16.0
v0.15.1What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.14.0...0.15.1
v0.14.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.13.2...0.14.0
v0.13.2Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.13.1...0.13.2
v0.13.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.13.0...0.13.1
v0.13.0Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.12.2...0.13.0
v0.12.2Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.12.1...0.12.2
v0.12.1Compare Source
What's Changed
Full Changelog: https://github.com/murar8/axum_typed_multipart/compare/0.11.2...0.12.1
marshallpierce/rust-base64 (base64)
v0.23.1Compare Source
v0.23.0Compare Source
simd-unsafefeature:Simdpicks the bestinstruction set at runtime (AVX2 on
x86_64, NEON onaarch64) and falls back to the scalarGeneralPurposeengine, whileAvx2andNeontarget one instruction set with no runtimedetection and work in
no_std. The engines support the standard and URL-safe alphabets.chronotope/chrono (chrono)
v0.4.45: 0.4.45Compare Source
What's Changed
v0.4.44: 0.4.44Compare Source
What's Changed
Cargo.tomlcontents by @coryan in #1772v0.4.43: 0.4.43Compare Source
What's Changed
NaiveDate::abs_diffby @Kinrany in #1752v0.4.42: 0.4.42Compare Source
What's Changed
wasm32-linuxsupport by @arjunr2 in #1707tzdataparsing by @ldm0 in #1679?Sizedbound to related methods ofDelayedFormat::write_toby @Huliiiiii in #1721from_timestamp_secsmethod toDateTimeby @jasonaowen in #1719clap-rs/clap (clap)
v4.6.7Compare Source
Features
#[command(defer = <bool>)]attribute to opt-in to lazy initialisation of subcommandsv4.6.6Compare Source
Features
Command::get_overridden_usagev4.6.5Compare Source
Fixes
value_namesare optional withnum_argsv4.6.4Compare Source
Internal
v4.6.3Compare Source
Fixes
"literal".function()as attribute valuesv4.6.2Compare Source
Fixes
aliaswhen there is only onev4.6.1Compare Source
Fixes
v4.6.0Compare Source
Compatibility
v4.5.61Compare Source
Internal
v4.5.60Compare Source
Fixes
v4.5.59Compare Source
Fixes
Command::ignore_errorsno longer masks help/version on subcommandsv4.5.58Compare Source
v4.5.57Compare Source
Fixes
.value_terminator("--")caused problems with an argument with.last(true)v4.5.56Compare Source
Fixes
v4.5.55Compare Source
Fixes
value_terminator("--")and escapes (--) where./foo -- barmeans the first arg is empty, rather than escaping future argsv4.5.54Compare Source
Fixes
[default]to its own paragraph whenPossibleValue::helpis present in--helpv4.5.53Compare Source
Features
default_values_if,default_values_ifsv4.5.52Compare Source
Fixes
args_conflicts_with_subcommandsconflicts with anArgGroupv4.5.51Compare Source
Fixes
ArgAction::Countv4.5.50Compare Source
Features
CowwhereStringand&strare acceptedv4.5.49Compare Source
Fixes
v4.5.48Compare Source
Documentation
typed_derivecookbook entryv4.5.47Compare Source
Features
impl FromArgMatches for ()impl Args for ()impl Subcommand for ()impl FromArgMatches for Infallibleimpl Subcommand for InfallibleFixes
clapv4.5.46Compare Source
Features
StyledStr::push_strv4.5.45Compare Source
Fixes
ValueEnumvariants now use the full doc comment, not summary, forPossibleValue::helpv4.5.44Compare Source
Features
Command::mut_subcommandsv4.5.43Compare Source
Fixes
v4.5.42Compare Source
Fixes
--helpv4.5.41Compare Source
Features
Styles::contextandStyles::context_valueto customize the styling of[default: value]like notes in the--helpv4.5.40Compare Source
Features
arg!()macro (e.g.arg!("check-config": ...))v4.5.39Compare Source
Fixes
open-cli-tools/concurrently (concurrently)
v9.2.5Compare Source
What's Changed
Full Changelog: https://github.com/open-cli-tools/concurrently/compare/v9.2.4...v9.2.5
v9.2.4Compare Source
Full Changelog: https://github.com/open-cli-tools/concurrently/compare/v9.2.3...v9.2.4
v9.2.3Compare Source
shell-quote- #591, #596streetsidesoftware/cspell (cspell)
v9.8.0Compare Source
Features
feat: make flatpack diff friendly (#8680)
feat: make flatpack diff friendly (#8680)
v9.7.0Compare Source
Features
feat: Substitution Part 4 - enable substitutions during document check (#8630)
feat: Substitution Part 4 - enable substitutions during document check (#8630)
v9.6.4Compare Source
Fixes
fix: add --no-dictionary option to lint command (#8514)
fix: add --no-dictionary option to lint command (#8514)
v9.6.3Compare Source
Fixes
fix: Add `engines` setting (#8491)
fix: Add
enginessetting (#8491)v9.6.2Compare Source
Fixes
fix: Conditionally compress and build bTrie (#8437)
fix: Conditionally compress and build bTrie (#8437)
v9.6.1Compare Source
Fixes
fix: Move performance monitoring into its own package (#8431)
fix: Move performance monitoring into its own package (#8431)
v9.6.0Compare Source
Features
feat: ESLint-plugin -- Distinguish between Forbidden, Misspelled, and Unknown words. (#8337)
feat: ESLint-plugin -- Distinguish between Forbidden, Misspelled, and Unknown words. (#8337)
v9.4.0Compare Source
Features
feat: Add option to skip large files (#8040)
feat: Add option to skip large files (#8040)
New command line option:
--max-file-size <value>The value can be
<number>[units], number with optional units.Supported units:
K,KB- value * 1024M,MB- value * 2^20G,GB- value * 2^30There is also a new setting called
maxFileSize. At the moment, it only takes numbers in bytes.This allows for setting a global value and overrides based upon glob settings.
Note: the command line value will override any value found in the configuration files.
Fixes
fix: turn off gpg when publishing for now (#8104)
fix: turn off gpg when publishing for now (#8104)
fix: Turnoff signing for now (#8102)
fix: Turnoff signing for now (#8102)
fix: Sign tags and commits when publishing (#8096)
fix: Sign tags and commits when publishing (#8096)
fix: Clean up verbose output (#8053)
fix: Clean up verbose output (#8053)
fix: allow string based maxFileSize (#8047)
fix: allow string based maxFileSize (#8047)
Dictionary Updates
fix: Workflow Bot -- Update Dictionaries (main) (#8091)
fix: Workflow Bot -- Update Dictionaries (main) (#8091)
eslint/eslint (eslint)
v9.39.5Compare Source
Bug Fixes
253be16fix: handle unavailable require cache (backport of #20812 to v9.x) (#21065) (Eric)Documentation
74930eddocs: switch build to Node.js 24 (#20894) (Milos Djermanovic)eaec8bbdocs: Add ESLint v9.x EOL notice (#20828) (Milos Djermanovic)Chores
458205fchore: update@eslint/eslintrcand@eslint/jsfor v9.39.5 (#21077) (Francesco Trotta)202117bchore: package.json update for @eslint/js release (Jenkins)d9eb6edtest: disable warning forvm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER(#21074) (Francesco Trotta)7b431a7chore: overridere2dependency for@metascraper/helpers(#21068) (Milos Djermanovic)daf7791chore: pin fflate@0.8.2 (#20895) (Milos Djermanovic)daee8baci: use pnpm ineslint-flat-config-utilstype integration test (#20829) (Milos Djermanovic)116d4beci: unpin Node.js 25.x in CI (#20619) (Copilot)v9.39.4Compare Source
Bug Fixes
f18f6c8fix: update dependency minimatch to ^3.1.5 (#20564) (Milos Djermanovic)a3c868ffix: update dependency @eslint/eslintrc to ^3.3.4 (#20554) (Milos Djermanovic)234d005fix: minimatch security vulnerability patch for v9.x (#20549) (Andrej Beles)b1b37eefix: updateajvto6.14.0to address security vulnerabilities (#20538) (루밀LuMir)Documentation
4675152docs: add deprecation notice partial (#20520) (Milos Djermanovic)Chores
b8b4eb1chore: update dependencies for ESLint v9.39.4 (#20596) (Francesco Trotta)71b2f6bchore: package.json update for @eslint/js release (Jenkins)1d16c2fci: pin Node.js 25.6.1 (#20563) (Milos Djermanovic)v9.39.3Compare Source
Bug Fixes
791bf8dfix: restore TypeScript 4.0 compatibility in types (#20504) (sethamus)Chores
8594a43chore: upgrade @eslint/js@9.39.3 (#20529) (Milos Djermanovic)9ceef92chore: package.json update for @eslint/js release (Jenkins)af498c6chore: ignore/docs/v9.xin link checker (#20453) (Milos Djermanovic)v9.39.2Compare Source
Bug Fixes
5705833fix: warn wheneslint-envconfiguration comments are found (#20381) (sethamus)Build Related
506f154build: add .scss files entry to knip (#20391) (Milos Djermanovic)Chores
7ca0af7chore: upgrade to@eslint/js@9.39.2(#20394) (Francesco Trotta)c43ce24chore: package.json update for @eslint/js release (Jenkins)4c9858eci: addv9.x-devbranch (#20382) (Milos Djermanovic)v9.39.1Compare Source
Bug Fixes
650753efix: Only pass node to JS lang visitor methods (#20283) (Nicholas C. Zakas)Documentation
51b51f4docs: add a section on when to use extends vs cascading (#20268) (Tanuj Kanti)b44d426docs: Update README (GitHub Actions Bot)Chores
92db329chore: update@eslint/jsversion to 9.39.1 (#20284) (Francesco Trotta)c7ebefcchore: package.json update for @eslint/js release (Jenkins)61778f6chore: update eslint-config-eslint dependency @eslint/js to ^9.39.0 (#20275) (renovate[bot])d9ca2fcci: Add rangeStrategy to eslint group in renovate config (#20266) (唯然)009e507test: fix version tests for ESLint v10 (#20274) (Milos Djermanovic)v9.39.0Compare Source
Features
cc57d87feat: update error loc to key inno-dupe-class-members(#20259) (Tanuj Kanti)126552ffeat: update error location infor-directionandno-dupe-args(#20258) (Tanuj Kanti)167d097feat: updatecomplexityrule to highlight only static block header (#20245) (jaymarvelz)Bug Fixes
15f5c7cfix: forward traversalstep.argsto visitors (#20253) (jaymarvelz)5a1a534fix: allow JSDoc comments in object-shorthand rule (#20167) (Nitin Kumar)e86b813fix: Use more types from @eslint/core (#20257) (Nicholas C. Zakas)927272dfix: correctScopetypings (#20198) (jaymarvelz)37f76d9fix: useAST.Programtype for Program node (#20244) (Francesco Trotta)ae07f0bfix: unify timing report for concurrent linting (#20188) (jaymarvelz)b165d47fix: correctRuletypings (#20199) (jaymarvelz)fb97cdafix: improve error message for missing fix function in suggestions (#20218) (jaymarvelz)Documentation
d3e81e3docs: Always recommend to include a files property (#20158) (Percy Ma)0f0385fdocs: use consistent naming recommendation (#20250) (Alex M. Spieslechner)a3b1456docs: Update README (GitHub Actions Bot)cf5f2dddocs: fix correct tag ofno-useless-constructor(#20255) (Tanuj Kanti)10b995cdocs: add TS options and examples fornofuncinno-use-before-define(#20249) (Tanuj Kanti)2584187docs: remove repetitive word in comment (#20242) (reddaisyy)637216bdocs: update CLI flags migration instructions (#20238) (jaymarvelz)e7cda3bdocs: Update README (GitHub Actions Bot)7b9446fdocs: handle empty flags sections on the feature flags page (#20222) (sethamus)Chores
dfe3c1bchore: update@eslint/jsversion to 9.39.0 (#20270) (Francesco Trotta)2375a6dchore: package.json update for @eslint/js release (Jenkins)a1f4e52chore: update@eslintdependencies (#20265) (Francesco Trotta)c7d3229chore: update dependency @eslint/core to ^0.17.0 (#20256) (renovate[bot])27549bcchore: update fuzz testing to not error if code sample minimizer fails (#20252) (Milos Djermanovic)a1370eeci: bump actions/setup-node from 5 to 6 (#20230) (dependabot[bot])9e7fad4chore: add script to auto-generate eslint:recommended configuration (#20208) (唯然)sweepline/eslint-plugin-unused-imports (eslint-plugin-unused-imports)
v4.4.1Compare Source
No significant changes
View changes on GitHub
v4.3.0Compare Source
v4.2.0Compare Source
rust-lang/futures-rs (futures)
v0.3.34Compare Source
synto 3. (#3028)v0.3.33Compare Source
ReadLine's soundness issue regarding to exception safety. (#3020)Sendimpl forIterPinRefandIter. (#3003)compat01as03implementation. (#3012)FuturesUnordered::IntoIter. (#3005)portable-atomic-allocfeature and use it inFuturesUnordered. (#3007)alloc::task::Wake. (#3010)spinto 0.12. (#3014)v0.3.32Compare Source
ready!macro in favor ofstd::task::ready!added in Rust 1.64 (#2925)pin_mut!macro in favor ofstd::pin::pin!added in Rust 1.68 (#2929)FuturesOrdered::clear(#2927)mpsc::*Receiver::recv(#2947)mpsc::*Receiver::try_recvand deprecatempsc::*Receiver::::try_next(#2944)FusedStreamforsink::With(#2948)no_stdsupport forshared(#2868)Mutex::new()const (#2956)#[clippy::has_significant_drop]to guards (#2967)pin-utils(#2929)num_cpus(#2946)rust-lang/log (log)
v0.4.35Compare Source
This release doesn't include source changes. It verifies
log's new CI/CD processes.Other
v0.4.34Compare Source
v0.4.33Compare Source
v0.4.32Compare Source
What's Changed
Value-> string conversions withkv+stdfeatures instead ofkv_stdby @tisonkun in #729Full Changelog: https://github.com/rust-lang/log/compare/0.4.31...0.4.32
v0.4.31Compare Source
What's Changed
Value-> string conversions withkv+stdfeatures instead ofkv_stdby @tisonkun in #729Full Changelog: https://github.com/rust-lang/log/compare/0.4.31...0.4.32
v0.4.30Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/rust-lang/log/compare/0.4.30...0.4.31
v0.4.29Compare Source
What's Changed
std::nettypes by @KodrAus in #724New Contributors
Full Changelog: https://github.com/rust-lang/log/compare/0.4.29...0.4.30
Notable Changes
isaacs/minimatch (minimatch)
v10.2.6Compare Source
v10.2.5Compare Source
v10.2.4Compare Source
v10.2.3Compare Source
v10.2.2Compare Source
v10.2.1Compare Source
v10.2.0Compare Source
v10.1.3Compare Source
v10.1.2Compare Source
v10.1.1Compare Source
v10.1.0Compare Source
v10.0.3Compare Source
v10.0.2Compare Source
raineorshine/npm-check-updates (npm-check-updates)
v19.6.6Compare Source
Auto Cooldown
The cooldown option is now automatically applied from the respective package manager's config:
min-release-age(#1632)npmMinimalAgeGate(excludingnpmPreapprovedPackages) (#1643)minimumReleaseAge(excludingminimumReleaseAgeExclude) (#1639)Why is this a breaking change?
Other changes
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.6...v20.0.0
v19.6.5Compare Source
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.5...v19.6.6
v19.6.3Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.3...v19.6.5
v19.6.2Compare Source
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.2...v19.6.3
v19.6.1Compare Source
What's Changed
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.1...v19.6.2
v19.6.0Compare Source
What's Changed
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.6.0...v19.6.1
v19.5.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.5.0...v19.6.0
v19.4.1Compare Source
What's Changed
--format homepageoption to print homepage.e.g.
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.4.1...v19.5.0
v19.4.0Compare Source
What's Changed
cooldownregression with number types in the ncurcFull Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.4.0...v19.4.1
v19.3.2Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.3.2...v19.4.0
v19.3.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.3.1...v19.3.2
v19.3.0Compare Source
What's Changed
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.3.0...v19.3.1
v19.2.1Compare Source
What's Changed
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.2.1...v19.3.0
v19.2.0Compare Source
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.2.0...v19.2.1
v19.1.2Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/raineorshine/npm-check-updates/compare/v19.1.2...v19.2.0
obsidianmd/obsidian-api (obsidian)
v1.14.4Compare Source
v1.13.1Compare Source
v1.13.0Compare Source
v1.12.3Compare Source
v1.12.2Compare Source
v1.12.0Compare Source
v1.11.4Compare Source
prettier/prettier (prettier)
v3.9.10Compare Source
diff
Markdown: Update
micromark-extension-gfm-tableto fix the table parse issue on performance (#20266 by @fisker)See micromark/micromark-extension-gfm-table@
4f43eadfor details.v3.9.9Compare Source
diff
Markdown: Fix text with
$been incorrectly parsed as math syntax (#20140 by @fisker)v3.9.8Compare Source
diff
Markdown: Don't let Liquid objects interrupt paragraphs (#20087 by @seiyab)
v3.9.7Compare Source
diff
Markdown: Prevent indentation drift in list-item code blocks (#19647, #19990 by @Austin1serb, @giaBaoJS)
JavaScript: Fix embedded template literal idempotency (#19725 by @fisker)
Markdown: Preserve Liquid blocks after Markdown tables (#19730 by @wanxiankai, @seiyab)
Markdown: Preserve single tildes in Markdown (#19739 by @lazerg)
Since 3.9.0, single-tilde spans like
H~2~Owere rewritten to double tildes, turning subscript syntax into strike-through. Only double tildes are treated that way now, matching GitHub.Markdown: Fix Markdown blockquote containing
>characters (#19802 by @seiyab)Markdown: Strip blockquote markers from a setext heading's continuation lines (#19878 by @Kjubikstronk)
A setext heading spanning multiple lines inside a blockquote kept the
>marker of its continuation lines as literal text.Markdown: Fix HTML block indentation drift in markdown list items (#19987 by @lazerg)
Angular: Support
@boundaryerror boundaries (#20014 by @Yahiro025)v3.9.6Compare Source
diff
TypeScript: Preserve quotes for methods named
new(#19621 by @kovsu)TypeScript: Support
import defer(#19624, #19675 by @fisker)JavaScript: Added a new official plugin
@prettier/plugin-yuku(#19628, #19629 by @fisker)@prettier/plugin-yukuis powered by Yuku (A high-performance JavaScript/TypeScript compiler toolchain written in Zig).This plugin includes two new parsers:
yuku(JavaScript syntax) andyuku-ts(TypeScript syntax).To use this plugin:
Install the plugin:
Add it to your
.prettierrc:Due to package size limitations, this plugin is not bundled with the main prettier package and must be installed separately.
For more information, check the package homepage.
Big thanks to @arshad-yaseen for his excellent work.
v3.9.5Compare Source
diff
Markdown: Cap ordered list mark at 999,999,999 (#19351 by @tats-u)
CommonMark parsers only support ordered list item numbers up to 999,999,999.
With this change, Prettier now caps the ordered list item number at 999,999,999 to ensure that the output is correctly parsed as an ordered list by CommonMark parsers. Numbers larger than 999,999,999 are not parsed as list item numbers and are left unchanged in the output:
Markdown: Avoid corrupting empty link with title (#19487 by @andersk)
Do not remove
<>from an inline link or image with an empty URL and a title, as this removal would change its interpretation.Less: Remove extra spaces after
[in map lookups (#19503 by @kovsu)CSS: Prevent addition space in
type()with+(#19516 by @bigandy)This fixes the addition space before
+in CSStype()declaration. For exampletype(<number>+)was being converted intotype(<number> +)which is invalid CSS and does not work.Less: Remove spaces between merge markers and colons (#19517 by @kovsu)
Markdown: Preserve wiki links with aliases (#19527 by @kovsu)
TypeScript: Fix comments being dropped on shorthand
typeimport/export specifiers (#19565 by @kirkwaiblinger)Miscellaneous: Preserving comments'
placementproperty (#19567 by @Janther)Prettier@3.9.0 deleted an undocumented property on comments, which was already used by plugins,
comment.placementis now available again after comment attach.Flow: Stop enforcing empty module declaration to break (#19568 by @fisker)
Angular: Support expression for exhaustive typechecking (#19571 by @fisker)
TypeScript: Ignore comments inside mapped type when checking type parameter comments (#19572 by @fisker)
Less: Fix adjacent block comments being corrupted (#19574 by @kovsu)
JavaScript: Handle dangling comments in
SwitchStatement(#19581 by @fisker)TypeScript: Remove space in comment-only object type (#19583 by @fisker)
v3.9.4Compare Source
diff
Angular: Format
@content(name)->@content (name)to align with other block syntax (#19499 by @fisker)v3.9.3Compare Source
diff
Markdown: Fix unexpected removal of characters in liquid syntax (#19489 by @seiyab)
TypeScript: Allow decorators to be used with declare on class fields (#19492 by @evoactivity)
Extensively used within the Ember ecosystem, decorators with
declareon class fields will ignore the babel parser error and allow Prettier to format the code without breaking it.v3.9.2Compare Source
v3.9.1Compare Source
diff
Markdown: Update
micromark-extension-gfm-tableto fix the table parse issue on performance (#20266 by @fisker)See micromark/micromark-extension-gfm-table@
4f43eadfor details.v3.9.0Compare Source
diff
🔗 Release Notes
v3.8.5Compare Source
diff
Flow: Support
readonlyas a variance annotation (#19022 by @marcoww6)Flow now accepts
readonlyas a property variance annotation, equivalent to+(covariant/read-only).v3.8.4Compare Source
diff
Markdown: Fix blank lines between list items and nested sub-lists being removed in Markdown/MDX (#17746 by @byplayer)
Prettier was removing blank lines between list items and their nested sub-lists, converting loose lists into tight lists and changing their semantic meaning.
v3.8.3Compare Source
diff
SCSS: Prevent trailing comma in
if()function (#18471 by @kovsu)v3.8.2Compare Source
diff
Angular: Support Angular v21.2 (#18722, #19034 by @fisker)
Exhaustive typechecking with
@default never;arrow functionandinstanceofexpressions.v3.8.1Compare Source
diff
Include available
printersin plugin type declarations (#18706 by @porada)v3.8.0Compare Source
diff
🔗 Release Notes
v3.7.4Compare Source
diff
LWC: Avoid quote around interpolations (#18383 by @kovsu)
TypeScript: Fix comment inside union type gets duplicated (#18393 by @fisker)
TypeScript: Fix unstable comment print in union type comments (#18395 by @fisker)
v3.7.3Compare Source
diff
API: Fix
prettier.getFileInfo()change that breaks VSCode extension (#18375 by @fisker)An internal refactor accidentally broke the VSCode extension plugin loading.
v3.7.2Compare Source
diff
JavaScript: Fix string print when switching quotes (#18351 by @fisker)
JavaScript: Preserve quote for embedded HTML attribute values (#18352 by @kovsu)
TypeScript: Fix comment in empty type literal (#18364 by @fisker)
v3.7.1Compare Source
diff
API: Fix performance regression in doc printer (#18342 by @fisker)
Prettier 3.7.0 can be very slow when formatting big files, the regression has been fixed.
v3.7.0Compare Source
diff
🔗 Release Notes
rust-random/rand (rand)
v0.10.3Compare Source
Fixes
WeightedIndexpanic when the sum of float weights is infinite; returnError::Overflowinstead (#1808)Error::NonFinitefromUniform::new_inclusiveon large finite float ranges such as0.0..=f64::MAX(#1821)Uniform<char>(#1831)Changes
WeightedIndex::weights()and reduce overhead when reading weights (#1838)v0.10.2Compare Source
Fixes
UniformCharfrom bad source (#1790)Changes
partial_shuffleand apply#[must_use](#1769)unsafein contexts where non-local memory corruption could invalidate contract (#1791)v0.10.1Compare Source
This release includes a fix for a soundness bug; see #1763.
Changes
make_rngand add#[track_caller](#1761)log(#1763)v0.10.0Compare Source
Changes
rand_chachahas been replaced with a dependency onchacha20. This changes the implementation behindStdRng, but the output remains the same. There may be some API breakage when using the ChaCha-types directly as these are now the ones inchacha20instead ofrand_chacha(#1642).IndexedRandom::choose_multiple->sample,choose_multiple_array->sample_array,choose_multiple_weighted->sample_weighted, structSliceChooseIter->IndexedSamplesand fnsIteratorRandom::choose_multiple->sample,choose_multiple_fill->sample_fill(#1632)Fillbe implemented for element types, not sliceable types (#1652)OsError::raw_os_erroron UEFI targets by returningOption<usize>(#1665)TryRngCore::read_adapter(..) -> RngReadAdapterwith simpler structRngReader(#1669)SeedableRng::from_os_rng,try_from_os_rng(#1674)Clonesupport forStdRng,ReseedingRng(#1677)postcardinstead ofbincodeto test the serde feature (#1693)IteratorRandom::samplewhenamountis much larger than iterator size (#1695)os_rng->sys_rng,OsRng->SysRng,OsError->SysError(#1697)Rng->RngExtas upstreamrand_corehas renamedRngCore->Rng(#1717)Additions
IndexedRandom::choose_iter,choose_weighted_iter(#1632)Xoshiro128PlusPlus,Xoshiro256PlusPlusprngs (#1649)ChaCha8Rng,ChaCha12Rng,ChaCha20Rngbehindchachafeature (#1659)rand::make_rng() -> R where R: SeedableRng(#1734)Removals
ReseedingRng(#1722)small_rng(#1732)v0.9.5Compare Source
What's Changed
Full Changelog: https://github.com/rust-random/rand/compare/0.9.4...0.9.5
v0.9.4Compare Source
Fixes
Full Changelog: https://github.com/rust-random/rand/compare/0.9.3...0.9.4
v0.9.3Compare Source
This release back-ports a fix from v0.10. See also [#1763].
Changes
log(#1764)doc_auto_cfg(#1764)Full Changelog: https://github.com/rust-random/rand/compare/0.9.2...0.9.3
v0.9.2Compare Source
Deprecated
rand::rngs::mockmodule andStepRnggenerator ([#1634])Additions
WeightedIndex<usize>(de)serialization ([#1646])v0.9.1Compare Source
Security and unsafe
zerocopydependency fromrand(#1579)Fixes
simd_supportfor recent nightly rust (#1586)Changes
fn rand::seq::index::sample_weightedandfn IndexedRandom::choose_multiple_weightedto return fewer thanamountresults (#1623), reverting an undocumented change ([#1382]) to the previous release.Additions
rand::distr::Alphabeticdistribution. (#1587)rand_core(#1604)rust-lang/regex (regex)
v1.13.1Compare Source
===================
This is a release that fixes a bug where incorrect regex match offsets could be
reported. Note that this doesn't impact whether a match occurs or not, just
where it occurs. The match offsets are still valid for slicing, they just may
not refer to the correct leftmost-first match. See
#1364 for (many) more details.
Bug fixes:
Fixes previously unsound reverse suffix and inner optimizations.
v1.13.0Compare Source
===================
This release includes a new API, a
regex!macro, for lazy compilation ofa regex from a string literal. If you use regexes a lot, it's likely you've
already written one exactly like it. The new macro can be used like this:
Improvements:
Add a new
regex!macro for efficient and automatic reuse of a compiled regex.v1.12.4Compare Source
===================
This release includes a performance optimization for compilation of regexes
with very large character classes.
Improvements:
Avoid re-canonicalizing the entire interval set when pushing new class ranges.
v1.12.3Compare Source
===================
This release excludes some unnecessary things from the archive published to
crates.io. Specifically, fuzzing data and various shell scripts are now
excluded. If you run into problems, please file an issue.
Improvements:
Switch from a Cargo
excludelist to anincludelist, and exclude someunnecessary stuff.
rust-lang/rust (rust)
v1.99.1Compare Source
===========================
wcslenon UEFI and embedded targetsboolreturn values on x86_64libLLVMon macOSv1.99.0Compare Source
==========================
Language
raw_borrows_via_referenceslint that checks for references that decay immediately into raw borrowsunconditional_paniclint to function calls that panic when the chunks/windows size is zero#[unsafe(naked)]functions to define C-variadic functions (#![feature(c_variadic_naked_functions)]).Sized#[my_macro] mod foo;. This allows outlined modules (mod foo;) anywhere in the body of a custom attribute or derive macro.overflowing_literalslint with repeated negation. For instance, it will now no longer lint on--128_i8, which is already detected by thearithmetic_overflowlint.invalid_runtime_symbol_definitionsandsuspicious_runtime_symbol_definitionslints#[path]attributes on inline modulesunreachable_cfg_select_predicateslint as part ofunusedlint groupasm!on x86UnsafeCellcan be accessed without going throughgetinvalid_reference_castinglint was adjusted accordinglyglobal_asm!docattribute is used on a macro invocationCompiler
-Ctarget-cpuinto a target-modifier for AVR, AMDGCN and NVPTXstatic_position_independent_executableson all gnu targetsPlatform Support
riscv64-unknown-linux-muslto Tier 2 with host toolsRefer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
RangeInclusive(a..=branges) is now optimized better in some circumstances. As a side effect of this, the behavior ofRangeInclusivevalues that has already been exhausted (as an iterator) has changed. For example, the return values ofstart()andend()on such ranges may return different values, and using such ranges as slice indexes may have different behavior. These behaviors were not guaranteed to be stable, so these changes are considered to not be breaking changes.transmute_copyto accept?Sizedtypestransmute_copyto use a non-unwinding panicescape_debug_extcore::fmt::NumBufferinalloc(andstd)Stabilized APIs
IntoIteratorforBox<[T; N]>IntoIteratorfor&Box<[T; N]>IntoIteratorfor&mut Box<[T; N]>VecDeque::retain_backcore::ffi::VaListBox::into_non_nullBox::from_non_nullVec::into_partsVec::from_partscore::mem::size_of_val_rawcore::mem::align_of_val_rawcore::alloc::Layout::for_value_rawString::from_utf8_lossy_ownedstring::FromUtf8Error::into_utf8_lossyFusedIterator for StepBy<I>std::fs::set_timesstd::fs::set_times_nofollow<LocalKey<Cell<T>>>::updateCargo
debug. This is a preparation for transitioning thedevprofile away from debugging to give a saner default for faster development iterations. Currently there is no difference betweendevanddebugprofiles. docs #17214default-featuresfield. For example,serde = { workspace = true, default-features = false }now turns off default features even when the workspace definition enables them. On earlier editions,default-features = falseis ignored with a warning. (RFC 3945) #17126See also the full Cargo changelog
Rustdoc
unused_footnote_definitionrustdoc lintCompatibility Notes
std::i32::MAXshould be accessed viai32::MAXinstead.no_mangle_generic_itemsinto hard errorPin::new_uncheckedhas had its safety invariants changed slightlyletpatterns typecheckunsupported()instead offrom_raw_os_error(22)#[repr(simd)]was accidentally allowed on macro invocations on stable RustBox::leak: tell people to avoid unleakingdoc(cfg())into account when filtering doctests'staticsemicolon_in_expressions_from_non_local_macros) even when the macro comes from another crate. Previously, such warnings only appeared for macros from the same crate, to avoid showing warnings that can't be fixed locally; however, this masked problems, as integration tests from the crate providing the macro get compiled as a separate crate, so tests often wouldn't reveal this issue. If you encounter a lint like this, please make sure to report it to the crate providing the macro so they can fix it; don't just silence it in your own crate.semicolon_in_expressions_from_macros: Lint on non-local macros toosemicolon_in_expressions_from_macrosinto a separate lintCIenvironment variable. #17220Internal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
v1.98.1Compare Source
===========================
v1.98.0Compare Source
==========================
Language
&mutwhen unsize-coercing, even in an invariant position. For example, you can now coerce aCell<&'long mut i32>to aCell<&'short mut dyn Send>. Such shortenings were already previously allowed when coercing a&mutto a&, or coercing a&to a&.invalid_runtime_symbol_definitionslint and warn-by-defaultsuspicious_runtime_symbol_definitionslintcoreruntime symbols likememcmp,memset,strlen, ... and is planned to be expanded in the next few releases.c_void_returnslint to checkcore::ffi::c_voidas a return typePlatform Support
powerpc64-unknown-linux-gnuelfv2as Tier 3aarch64-unknown-linux-pauthtestas Tier 3 targetthumbv7a-none-eabito Tier 2thumbv7a-none-eabihfto Tier 2thumbv7r-none-eabito Tier 2thumbv7r-none-eabihfto Tier 2thumbv8r-none-eabihfto Tier 2Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
Location<'_>lifetime to'staticinPanic[Hook]InfoRangeInclusive::from(legacy::RangeInclusive)ManuallyDrop'sBoxinteraction has been fixedderivemacro is available at{core,std}::derive. This was previously unintentionally stabilized in 1.96, but is now explicitly accepted as a stabilized API.{core,std}::derivewill be 1.96, and not 1.98.Stabilized APIs
str::substr_range[T]::subslice_rangecore::fmt::NumBuffer<{integer}>::format_intoSend/Sync for std::process::CommandArgs{fN}::algebraic_add{fN}::algebraic_sub{fN}::algebraic_mul{fN}::algebraic_div{fN}::algebraic_remNonZero<{integer}>::from_str_radixString::from_utf16leString::from_utf16le_lossyString::from_utf16beString::from_utf16be_lossy[T]::strip_circumfixstr::strip_circumfixAtomic<T>::from_mutAtomic<T>::get_mut_sliceAtomic<T>::from_mut_slicestd::range::legacybool::ok_orbool::ok_or_elseOption::map_or_defaultResult::map_or_defaultBox::as_ptrBox::as_mut_ptrPath::is_emptyPathBuf::into_stringarch::{arm,aarch64}::vdot*: NEON dot product intrinsicsCompatibility Notes
ambiguous_glob_importslint into a hard errorType = TypeandType == Typeare no longer syntactically allowedrepr(transparent)is now more strict about which fields have "trivial" layout and hence can be ignored:repr(C)types, types with private fields, and#[non_exhaustive]types are no longer considered "trivial"transmute()when somereprattributes are involved.derive(PartialOrd)when derivingOrdThis can break crates in practice where a type's PartialOrd and Ord impls were inconsistent with each other.
assert_eqandassert_nePartialEqimplementation, when aderive(PartialEq)implementation for that type also exists.-Zemscripten-wasm-eh=falseflag to switch back to JS exceptions has been removed.File::lockimplementation, it has the wrong semantics (return "unsupported" instead)cfg_select!This may cause more code to be formatted which was previously ignored.
v1.97.1Compare Source
==========================
This backports an LLVM submodule bump to include the LLVM-side fix and a
revert of the rustc change that is one known trigger for the bug. The rustc
side revert should not be strictly necessary but is done out of abundance of caution.
v1.97.0Compare Source
==========================
Language
Result<T, Uninhabited>andControlFlow<Uninhabited, T>to be equivalent toTfor must use lintdead_code_pub_in_binarylint for unused pub items in binary cratesdiv32,lam-bh,lamcas,ld-seq-saandscqtarget featurescfg(target_has_atomic_primitive_alignment)selfin imports in more casesPlatform Support
Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Stabilized APIs
Default for RepeatNCopy for ffi::FromBytesUntilNulErrorSend for std::fs::Fileon UEFI<{integer}>::isolate_highest_one<{integer}>::isolate_lowest_one<{integer}>::highest_one<{integer}>::lowest_one<{integer}>::bit_widthNonZero<{integer}>::isolate_highest_oneNonZero<{integer}>::isolate_lowest_oneNonZero<{integer}>::highest_oneNonZero<{integer}>::lowest_oneNonZero<{integer}>::bit_widthThese previously stable APIs are now stable in const contexts:
char::is_controlCargo
build.warningsconfig. This controls how lint warnings from local packages are treated. Useful for enforcing a warning-free build in CI, replacing-Dwarnings. docsresolver.lockfile-pathconfig. This allows specifying the path to the lockfile to use when resolving dependencies. Useful when working with read-only source directories. docs--target-dirdoesn't look like a Cargo target directory. This prevents accidental deletion of non-target directories.-mshorthand for--manifest-pathcurldependency fromcrates-iocrateRustdoc
--emitflag--remap-path-prefixCompatibility Notes
f32: From<{float}>to constrain{float}pin!, in order to prevent unsoundness. The most likely case where this might impact users is: writingpin!(x)wherexhas type&mut Twill now always correctly produce a value of typePin<&mut &mut T>, instead of sometimes allowing a coercion that produces a value of typePin<&mut T>. This coercion was previously incorrectly allowed since Rust 1.88.0.std::charconstants and functionsf64methods which have been deprecated since 1.0varargs_without_patternlint in depslink_sectionspecifierenums have changed. This is not a breaking change, as it only applies toenums without layout guarantees, but is noted here as we've seen people impacted from having made assumptions about the layout algorithm.#[export_name = "..."]where the name is empty#[link_name = "..."]&#[link(name = "...")]parametersshutdownon a socket to shut down the write side, attempting to write to the socket will now produce aBrokenPipeerror rather thanOther. MapWSAESHUTDOWNtoio::ErrorKind::BrokenPipev1.96.1Compare Source
===========================
v1.96.0Compare Source
==========================
Language
exprmetavariable tocfgManuallyDropas patterns (fixing a regression introduced in 1.94.0)Compiler
riscv64gc-unknown-fuchsiabaseline to RVA22 + vectorLibraries
NonZerointegersStabilized APIs
assert_matches!debug_assert_matches!From<T> for AssertUnwindSafe<T>From<T> for LazyCell<T, F>From<T> for LazyLock<T, F>core::range::RangeToInclusivecore::range::RangeToInclusiveItercore::range::RangeFromcore::range::RangeFromItercore::range::Rangecore::range::RangeIterCargo
target.'cfg(..)'.rustdocflagssupport in configuration.Rustdoc
white-space: pre-wrap;property and stripped any<p>elements from the rendered html, however this caused issues and unintuitive behavior. The new behavior should be more predictable, however some multi-line deprecation notes will now be rendered as as single lines. If this is undesirable, you can use the standard markdown method of forcing a linebreak, which is two spaces followed by a newline ("\n").missing_doc_code_exampleslint on impl itemsCompatibility Notes
#[repr(Int)]enums in some edge cases involving fields of uninhabited zero-sized typesPin<Foo>whereFoodoesn't implementDeref. Some such coercions were previously allowed, but produce a type with no useful public API.--allow-undefinedon wasm targets#![reexport_test_harness_main]attributeuninhabited_staticlint in dependencies and make it deny-by-defaultThis appears to improve the quality of backtraces. This change has no effect on the defaults for the output of rustc/cargo on these targets.
-Csoft-float::{self [as name]}, e.g.,struct S {}; use S::{self as Other};, is now no longer permitted because{self}imports require a module parent.export_name,link_name, andlink_sectionattributes, if multiple of the same attribute is present, the first one now takes precedence.avrtargets, C'sdoubletype is 32-bit by default, so changec_doubletof32onavrtargets to match. This is a breaking change, but necessary to makec_doublematch C's double.BTreeMap::append()was optimized, which may now cause panics for types with incorrectOrdimplsInternal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
aarch64softfloat targets now have to haverustc_abiset to"softfloat"cfg(target_abi)v1.95.0Compare Source
===========================
Language
if letguards on match armsirrefutable_let_patternslint no longer lints on let chainsCompiler
--remap-path-scopefor controlling the scoping of how paths get remapped in the resulting binaryPlatform Support
powerpc64-unknown-linux-muslto Tier 2 with host toolsaarch64-apple-tvosto Tier 2aarch64-apple-tvos-simto Tier 2aarch64-apple-watchosto Tier 2aarch64-apple-watchos-simto Tier 2aarch64-apple-visionosto Tier 2aarch64-apple-visionos-simto Tier 2Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
thread::scope: document how join interacts with TLS destructorsstr::containson aarch64 targets withneontarget feature enabled by defaultStabilized APIs
MaybeUninit<[T; N]>: From<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>]>MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>; N]>MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>]>[MaybeUninit<T>; N]: From<MaybeUninit<[T; N]>>Cell<[T; N]>: AsRef<[Cell<T>; N]>Cell<[T; N]>: AsRef<[Cell<T>]>Cell<[T]>: AsRef<[Cell<T>]>bool: TryFrom<{integer}>AtomicPtr::updateAtomicPtr::try_updateAtomicBool::updateAtomicBool::try_updateAtomicIn::updateAtomicIn::try_updateAtomicUn::updateAtomicUn::try_updatecfg_select!mod core::rangecore::range::RangeInclusivecore::range::RangeInclusiveItercore::hint::cold_path<*const T>::as_ref_unchecked<*mut T>::as_ref_unchecked<*mut T>::as_mut_uncheckedVec::push_mutVec::insert_mutVecDeque::push_front_mutVecDeque::push_back_mutVecDeque::insert_mutLinkedList::push_front_mutLinkedList::push_back_mutLayout::dangling_ptrLayout::repeatLayout::repeat_packedLayout::extend_packedcore::arch::aarch64::__jcvtThese previously stable APIs are now stable in const contexts:
fmt::from_fnControlFlow::is_breakControlFlow::is_continueRustdoc
Compatibility Notes
$cratewithout renaming, i.e.use $crate::{self};, is now no longer permitted due to stricter error checking forselfimports.In very rare cases, this may cause compilation errors due to bytes from parts of a pointer ending up in the padding bytes of a
constorstatic.ambiguous_glob_imported_traitsis now reported when using an ambiguously glob imported traitEq::assert_receiver_is_total_eqand emit future compatibility warnings on manual impls#[non_exhaustive]enum now reads the discriminant, even if the enum has only one variant. This can cause closures to capture values that they previously wouldn't.mut refandmut ref mutpatterns, part of the unstable Match Ergonomics 2024 RFC, were accidentally allowed on stable within struct pattern field shorthand. These patterns are now correctly feature-gated as unstable in this position.-Z unstable-optionsto use. Previously, they could not be used without the standard library, which has no stable build mechanism. In preparation for thebuild-stdproject adding that support, JSON target specs are being proactively gated to ensure they remain unstable even ifbuild-stdis stabilized. Cargo now includes the-Z json-target-specCLI flag to automatically pass-Z unstable-optionsto the compiler when needed. See #150151, #151534, and rust-lang/cargo#16557.#[feature]attributes on invalid targets are now checkedInternal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
v1.94.1Compare Source
===========================
std::thread::spawnon wasm32-wasip1-threadsstd::os::windows::fs::OpenOptionsExtThe new methods were unstable, but the trait itself is not sealed and so
cannot be extended with non-default methods.
match_same_armsThis resolves CVE-2026-33055 and CVE-2026-33056. Users of crates.io are not affected.
See blog for more details.
v1.94.0Compare Source
==========================
Language
exprmetavariable tocfgManuallyDropas patterns (fixing a regression introduced in 1.94.0)Compiler
riscv64gc-unknown-fuchsiabaseline to RVA22 + vectorLibraries
NonZerointegersStabilized APIs
assert_matches!debug_assert_matches!From<T> for AssertUnwindSafe<T>From<T> for LazyCell<T, F>From<T> for LazyLock<T, F>core::range::RangeToInclusivecore::range::RangeToInclusiveItercore::range::RangeFromcore::range::RangeFromItercore::range::Rangecore::range::RangeIterCargo
target.'cfg(..)'.rustdocflagssupport in configuration.Rustdoc
white-space: pre-wrap;property and stripped any<p>elements from the rendered html, however this caused issues and unintuitive behavior. The new behavior should be more predictable, however some multi-line deprecation notes will now be rendered as as single lines. If this is undesirable, you can use the standard markdown method of forcing a linebreak, which is two spaces followed by a newline ("\n").missing_doc_code_exampleslint on impl itemsCompatibility Notes
#[repr(Int)]enums in some edge cases involving fields of uninhabited zero-sized typesPin<Foo>whereFoodoesn't implementDeref. Some such coercions were previously allowed, but produce a type with no useful public API.--allow-undefinedon wasm targets#![reexport_test_harness_main]attributeuninhabited_staticlint in dependencies and make it deny-by-defaultThis appears to improve the quality of backtraces. This change has no effect on the defaults for the output of rustc/cargo on these targets.
-Csoft-float::{self [as name]}, e.g.,struct S {}; use S::{self as Other};, is now no longer permitted because{self}imports require a module parent.export_name,link_name, andlink_sectionattributes, if multiple of the same attribute is present, the first one now takes precedence.avrtargets, C'sdoubletype is 32-bit by default, so changec_doubletof32onavrtargets to match. This is a breaking change, but necessary to makec_doublematch C's double.BTreeMap::append()was optimized, which may now cause panics for types with incorrectOrdimplsInternal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
aarch64softfloat targets now have to haverustc_abiset to"softfloat"cfg(target_abi)v1.93.1Compare Source
===========================
clippy::panicking_unwrapfalse-positive on field access with implicit deref.wasm32-wasip2target.v1.93.0Compare Source
==========================
Language
vector-related target features and theis_s390x_feature_detected!macrosystemABIcfgpredicateasm_cfgconstitems that contain mutable references tostatic(which is very unsafe, but not always UB)const_item_interior_mutationslint to warn against calls which mutate interior mutableconstitemsfunction_casts_as_integerlintCompiler
-Cjump-tables=bool. The flag was previously called-Zno-jump-tables.Platform Support
riscv64a23-unknown-linux-gnuto Tier 2 (without host tools)Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
specializationon theCopytrait as it is unsound in the presence of lifetime dependentCopyimplementations. This may result in some performance regressions as some standard library APIs may now callClone::cloneinstead of performing bitwise copiesstd::thread::current()BTree::appendnot update existing keys when appending an entry which already existsT: RefUnwindSafeforvec::IntoIter<T>: UnwindSafeStabilized APIs
<[MaybeUninit<T>]>::assume_init_drop<[MaybeUninit<T>]>::assume_init_ref<[MaybeUninit<T>]>::assume_init_mut<[MaybeUninit<T>]>::write_copy_of_slice<[MaybeUninit<T>]>::write_clone_of_sliceString::into_raw_partsVec::into_raw_parts<iN>::unchecked_neg<iN>::unchecked_shl<iN>::unchecked_shr<uN>::unchecked_shl<uN>::unchecked_shr<[T]>::as_array<[T]>::as_mut_array<*const [T]>::as_array<*mut [T]>::as_mut_arrayVecDeque::pop_front_ifVecDeque::pop_back_ifDuration::from_nanos_u128char::MAX_LEN_UTF8char::MAX_LEN_UTF16std::fmt::from_fnstd::fmt::FromFnCargo
cargo tree, support long forms for--formatvariables--workspacetocargo cleanRustdoc
#![doc(document_private_items)]importhtml_favicon_url,html_logo_url,html_playground_url,issue_tracker_base_url, orhtml_no_sourceeither has a missing value, an unexpected value, or a value of the wrong type, rustdoc will emit the deny-by-default lintrustdoc::invalid_doc_attributes.Compatibility Notes
pin_v2into the builtin attributes namespacepanic=unwindwas changed from the JS exception handling ABI to the wasm exception handling ABI. If linking C/C++ object files with Rust objects,-fwasm-exceptionsmust be passed to the linker now. On nightly Rust, it is possible to get the old behavior with-Zwasm-emscripten-eh=false -Zbuild-std, but it will be removed in a future release.#[test]attribute, used to define tests, was previously ignored in various places where it had no meaning (e.g on trait methods or types). Putting the#[test]attribute in these places is no longer ignored, and will now result in an error; this may also result in errors when generating rustdoc. Error whentestattribute is applied to structsCARGO_CFG_DEBUG_ASSERTIONSenvironment variable in more situations. This will cause crates depending onstatic-initversions 1.0.1 to 1.0.3 to fail compilation with "failed to resolve: use of unresolved module or unlinked crateparking_lot". See the linked issue for details.offset_of!macro are now checked to be well formed.cargo publishno longer emits.cratefiles as a final artifact for user access when thebuild.build-dirconfig is unsetderef_nullptrlint from warn-by-default to deny-by-default...function parameters without a pattern outside ofexternblocksrepr(C)enums whose discriminant values do not fit into ac_intorc_uintrepr(C)types as part ofrepr(transparent)v1.92.0Compare Source
==========================
Language
MaybeUninitrepresentation and validity&raw [mut | const]for union field in safe codeSizedXin[X; 0]whenXis unsizing a const#[track_caller]and#[no_mangle](requires every declaration specifying#[track_caller]as well)never_type_fallback_flowing_into_unsafeanddependency_on_unit_never_type_fallbackdeny-by-defaultunused_must_uselint no longer warns onResult<(), Uninhabited>(for instance,Result<(), !>), orControlFlow<Uninhabited, ()>. This avoids having to check for an error that can never happen.Compiler
mips64el-unknown-linux-muslabi64link dynamicallyCommand-line information is typically not needed by debugging tools, and the removed code
was causing problems for incremental builds even on targets that don't use PDB debuginfo.
Libraries
Iterator::eq{_by}forTrustedLeniteratorsExtendfor tuplesDebugforEncodeWide.iter::Repeat::lastandcountwill now panic, rather than looping infinitely.Stabilized APIs
NonZero<u{N}>::div_ceilLocation::file_as_c_strRwLockWriteGuard::downgradeBox::new_zeroedBox::new_zeroed_sliceRc::new_zeroedRc::new_zeroed_sliceArc::new_zeroedArc::new_zeroed_slicebtree_map::Entry::insert_entrybtree_map::VacantEntry::insert_entryimpl Extend<proc_macro::Group> for proc_macro::TokenStreamimpl Extend<proc_macro::Literal> for proc_macro::TokenStreamimpl Extend<proc_macro::Punct> for proc_macro::TokenStreamimpl Extend<proc_macro::Ident> for proc_macro::TokenStreamThese previously stable APIs are now stable in const contexts:
<[_]>::rotate_left<[_]>::rotate_rightCargo
Rustdoc
Iterator::lastas well as impl methods likestd::vec::IntoIter::last. Now these impl methods will be hidden, freeing up space for inherent methods likeBTreeSet::last.Compatibility Notes
-C panic=aborton Linux by generating unwind tables by default. Build with-C force-unwind-tables=noto keep omitting unwind tables.invalid_macro_export_argumentsis upgraded to deny-by-default and will be reported in dependencies too.impl DerefMut for Pin<LocalType>pin!and formatting macrosv1.91.1Compare Source
===========================
wasm_import_moduleattribute cross-crate. This fixes linker errors on WASM targets.v1.91.0Compare Source
==========================
Language
sysv64,win64,efiapi, andaapcsABIs.This brings these ABIs in line with the C ABI: variadic functions can be declared in extern blocks but not defined.
dangling_pointers_from_localslint to warn against dangling pointers from local variablessemicolon_in_expressions_from_macrosfrom warn to denyinteger_to_ptr_transmuteslint against integer-to-pointer transmutessse4aandtbmtarget featurestarget_env = "macabi"andtarget_env = "sim"cfgs as replacements for thetarget_abicfgs with the same values.Compiler
ascasts as unreachablePlatform Support
aarch64-pc-windows-gnullvmandx86_64-pc-windows-gnullvmto Tier 2 with host tools.Note: llvm-tools and MSI installers are missing but will be added in future releases.
aarch64-pc-windows-msvcto Tier 1Refer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
core::panic::Location::filereturn type_by()variants ofmin/max/minmaxinstd::cmpCloneandEqtraitsstd::thread: Return error if setting thread stack size failsThis used to panic within the standard library.
Stabilized APIs
Path::file_prefixAtomicPtr::fetch_ptr_addAtomicPtr::fetch_ptr_subAtomicPtr::fetch_byte_addAtomicPtr::fetch_byte_subAtomicPtr::fetch_orAtomicPtr::fetch_andAtomicPtr::fetch_xor{integer}::strict_add{integer}::strict_sub{integer}::strict_mul{integer}::strict_div{integer}::strict_div_euclid{integer}::strict_rem{integer}::strict_rem_euclid{integer}::strict_neg{integer}::strict_shl{integer}::strict_shr{integer}::strict_powi{N}::strict_add_unsignedi{N}::strict_sub_unsignedi{N}::strict_absu{N}::strict_add_signedu{N}::strict_sub_signedPanicHookInfo::payload_as_strcore::iter::chainu{N}::checked_signed_diffcore::array::repeatPathBuf::add_extensionPathBuf::with_added_extensionDuration::from_minsDuration::from_hoursimpl PartialEq<str> for PathBufimpl PartialEq<String> for PathBufimpl PartialEq<str> for Pathimpl PartialEq<String> for Pathimpl PartialEq<PathBuf> for Stringimpl PartialEq<Path> for Stringimpl PartialEq<PathBuf> for strimpl PartialEq<Path> for strIpv4Addr::from_octetsIpv6Addr::from_octetsIpv6Addr::from_segmentsimpl<T> Default for Pin<Box<T>> where Box<T>: Default, T: ?Sizedimpl<T> Default for Pin<Rc<T>> where Rc<T>: Default, T: ?Sizedimpl<T> Default for Pin<Arc<T>> where Arc<T>: Default, T: ?SizedCell::as_array_of_cellsu{N}::carrying_addu{N}::borrowing_subu{N}::carrying_mulu{N}::carrying_mul_addBTreeMap::extract_ifBTreeSet::extract_ifimpl Debug for windows::ffi::EncodeWide<'_>str::ceil_char_boundarystr::floor_char_boundaryimpl Sum for Saturating<u{N}>impl Sum<&Self> for Saturating<u{N}>impl Product for Saturating<u{N}>impl Product<&Self> for Saturating<u{N}>These previously stable APIs are now stable in const contexts:
<[T; N]>::each_ref<[T; N]>::each_mutOsString::newPathBuf::newTypeId::ofptr::with_exposed_provenanceptr::with_exposed_provenance_mutCargo
build.build-dir.This config sets the directory where intermediate build artifacts are stored.
These artifacts are produced by Cargo and rustc during the build process.
End users usually won't need to interact with them, and the layout inside
build-diris an implementation detail that may change without notice.(config doc)
(build cache doc)
#15833
#15840
--targetflag and thebuild.targetconfiguration can now take literal"host-tuple"string, which will internally be substituted by the hostmachine's target triple.
#15838
#16003
#16032
Rustdoc
*const u8 ->, and additionally functions that take or return raw pointers will now display their signature properly in search results.Compatibility Notes
cc, and pass it viaSDKROOTenv var. This should fix linking issues withrustcrunning inside Xcode. Libraries in/usr/local/libmay no longer be linked automatically, if you develop or use a crate that relies on this, you should explicitly setcargo::rustc-link-search=/usr/local/libin abuild.rsscript.TraitRef<AssocTy: ?Sized>are now correctly forbidden#[sanitize(xyz = "on|off")]built-in attribute that shadows procedural macros with the same name#[should_panic]attributes#[link]attributessemicolon_in_expressions_from_macros, formacro_rules!macros in expression position that expand to end in a semicolon (;), is now deny-by-default. It was already warn-by-default, and a future compatibility warning (FCW) that warned even in dependencies. This lint will become a hard error in the future.unsafe,!,default) in inherent impls are no longer syntactically validill_formed_attribute_inputin dependenciespin!,format_args!,write!, andwriteln!inif letscrutinees in Rust Edition 2024. This applies Rust Edition 2024'sif lettemporary scope rules to these temporaries, which previously could live past theifexpression regardless of Edition.staticare now syntactically invalid--cfgand--check-cfgarguments are no longer allowedCargo compatibility notes:
cargo publishno longer keeps.cratetarballs as final build artifactswhen
build.build-diris set. These tarballs were previously included due toan oversight and are now treated as intermediate artifacts.
To get
.cratetarballs as final artifacts, usecargo package.In a future version, this change will apply regardless of
build.build-dir.#15910
This changes some of the terminal colors used by Cargo messages.
#15928
internal details of Cargo's
build-dirmay not work for users changing their
build-dirlayout.For those doing so, we'd recommend proactively testing these cases
particularly as we are considering changing the default location of the
build-dirin the future(cargo#16147).
If you can't migrate off of Cargo's internal details,
we'd like to learn more about your use case as we prepare to change the layout of the
build-dir(cargo#15010).
Internal Changes
These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.
v1.90.0Compare Source
===========================
Language
unknown_or_malformed_diagnostic_attributeslint. This lint has been split up into four finer-grained lints, withunknown_or_malformed_diagnostic_attributesnow being the lint group that contains these lints:unknown_diagnostic_attributes: unknown to the current compilermisplaced_diagnostic_attributes: placed on the wrong itemmalformed_diagnostic_attributes: malformed attribute syntax or optionsmalformed_diagnostic_format_literals: malformed format string literalCompiler
lldby default onx86_64-unknown-linux-gnu.musltargets now link dynamically by default. Affected targets:mips64-unknown-linux-muslabi64powerpc64-unknown-linux-muslpowerpc-unknown-linux-muslpowerpc-unknown-linux-muslsperiscv32gc-unknown-linux-musls390x-unknown-linux-muslthumbv7neon-unknown-linux-musleabihfPlatform Support
x86_64-apple-darwinto Tier 2 with host toolsRefer to Rust's platform support page
for more information on Rust's tiered platform support.
Libraries
u*::{checked,overflowing,saturating,wrapping}_sub_signedCStr,CString, andCow<CStr>MSG_NOSIGNALforUnixStreamproc_macro::Ident::newnow supports$crate.Thread::into_rawhas at least 8 bytes of alignmentStabilized APIs
u{n}::checked_sub_signedu{n}::overflowing_sub_signedu{n}::saturating_sub_signedu{n}::wrapping_sub_signedimpl Copy for IntErrorKindimpl Hash for IntErrorKindimpl PartialEq<&CStr> for CStrimpl PartialEq<CString> for CStrimpl PartialEq<Cow<CStr>> for CStrimpl PartialEq<&CStr> for CStringimpl PartialEq<CStr> for CStringimpl PartialEq<Cow<CStr>> for CStringimpl PartialEq<&CStr> for Cow<CStr>impl PartialEq<CStr> for Cow<CStr>impl PartialEq<CString> for Cow<CStr>These previously stable APIs are now stable in const contexts:
<[T]>::reversef32::floorf32::ceilf32::truncf32::fractf32::roundf32::round_ties_evenf64::floorf64::ceilf64::truncf64::fractf64::roundf64::round_ties_evenCargo
http.proxy-cainfoconfig for proxy certsgixforcargo packageRustdoc
implblocks, now they do when shift is heldunsafe()wrappersCompatibility Notes
lldby default onx86_64-unknown-linux-gnu.See also https://blog.rust-lang.org/2025/09/01/rust-lld-on-1.90.0-stable/.
core::iter::Fuse'sDefaultimpl constructI::default()internally as promised in the docs instead of always being emptyMSG_NOSIGNALforUnixStreamThis may change program behavior but results in the same behavior as other primitives (e.g., stdout, network sockets).
Programs relying on signals to terminate them should update handling of sockets to handle errors on write by exiting.
std::env::home_dirwill use the fallback if theHOMEenvironment variable is emptyextern "{abi}"s consistently in all positions. This primarily affects the use of implementing traits on anextern "{abi}"function pointer, likeextern "stdcall" fn(), on a platform that doesn't support that, like aarch64-unknown-linux-gnu. Direct usage of these unsupported ABI strings by declaring or defining functions was already rejected, so this is only a change for consistency.proc_macro_derivemacro has correct arguments when applied to the crate rootserde-rs/serde (serde)
v1.0.229Compare Source
serde-rs/json (serde_json)
v1.0.154Compare Source
v1.0.153Compare Source
v1.0.152Compare Source
-0in arbitrary_precision mode (#1346, thanks @yuxi-liu-wired)v1.0.151Compare Source
v1.0.150Compare Source
v1.0.149Compare Source
v1.0.148Compare Source
zmijdependency to 1.0v1.0.147Compare Source
v1.0.146Compare Source
launchbadge/sqlx (sqlx)
v0.9.0Compare Source
Important Announcements
New Github Organization
Shortly after this release is published, the SQLx repository will be transferred to a new GitHub organization:
https://github.com/transact-rs/
This is because SQLx has not been owned or maintained by LaunchBadge, LLC. for a few years now, and has since been
informally transferred to the collective ownership of its principal authors. Moving the repository to a new
organization makes this change more clear, and also allows for potentially inviting outside collaborators.
Cargo.lockRemoved from TrackingThe
Cargo.lockhas been removed from tracking in Git. CI should now always test with the latest versions ofall dependencies by default, alongside our pass that checks with
cargo generate-lockfile -Z minimal-versions.This should eliminate the need for any PRs that update dependencies to also update
Cargo.lockorcontend with an endless stream of merge conflicts against it.
N.B.
cargo install --locked sqlx-cliwill no longer work. However,cargo install sqlx-clihas alwaysused the latest dependencies by default, ignoring the lockfile, so most users should not be affected. For users
requiring reproducible builds, consider maintaining your own lockfile instead; historically, we only ran
cargo updatesporadically, so relying on SQLx's lockfile offered few guarantees anyway.
See the manual page for
cargo installfor details.Breaking
As per our MSRV policy, the supported Rust version for this release cycle is
1.94.0.sqlx.tomlformat [[@abonander]]sqlx-clinow support per-crate configuration files (sqlx.toml)DATABASE_URLfor a crate (for multi-database workspaces)_sqlx_migrationstable (for multiple crates using the same database)sqlx-tomlto use.sqlx-clihas it enabled by default, butsqlxdoes not.so it's better to keep the default feature set as limited as possible.
This is something we learned the hard way.
sqlx::_configmodule in documentation.DATABASE_URLrenaming and global type overrides: [Link]_sqlx_migrationsrenaming and multiple schemas: [Link]chronowhentimeis enabled (e.g. when usingtower-sessions-sqlx-store): [Link]bigdecimalwhenrust_decimalis enabled is also shown, but problems withchrono/timeare more common.Migratetraitsqlx::migrate::resolve_blocking()is now#[doc(hidden)]and thus SemVer-exempt.tracinglogs from SQLx will need to update the spelling.PgAdvisoryLockGuard[[@bonsairobo]]Migrator::set_ignore_missingandset_lockingnow return&mut Selfinstead of&Selfwhich may break code in rare circumstances.
query!()macros for certain queries in Postgres.RawSqllifetime issues [[@abonander]]DBtype parameter to all methods ofRawSqlDecode,EncodeandTypeforBox,Arc,CowandRc[[@joeydewaal]]impl Decode for Cownow always decodesCow::Owned, lifetime is unlinkedquery*()functions now takeimpl SqlSafeStrwhich is only implemented for
&'static strandAssertSqlSafe.For all others, wrap in
AssertSqlSafe(<query>).Query<'static, DB>.SqlSafeStrtrait is deliberately similar tostd::panic::UnwindSafe,serving as a speedbump to warn users about naïvely building queries with
format!()while allowing a workaround for advanced usage that is easy to spot on code review.
PgConnectOptions::options()are now automatically escaped.Manual escaping of options is no longer necessary and may cause incorrect behavior.
runtime-tokio-native-tls)TransactionManagertrait insqlx.#[doc(hidden)],but it will break SeaORM if not proactively fixed.
str[[@abonander]]Vec<u8>will be inferred to beString(this should ultimately fix more code than it breaks).
SET NAMES utf8mb4 COLLATE utf8_general_ciis no longer sent by default; instead,SET NAMES utf8mb4is sent toallow the server to select the appropriate default collation (since this is version- and configuration-dependent).
MySqlConnectOptions::charset()and::collation()now imply::set_names(true)because they don't do anything otherwise.charsetdoesn't change what's sent in theProtocol::HandshakeResponse41packet as that normally onlymatters for error messages before
SET NAMESis sent.The default collation if
set_names = falseisutf8mb4_general_ci.RawSql::fetch_optional()now returnssqlx::Result<Option<DB::Row>>instead of
sqlx::Result<DB::Row>. Whoops.libsqlite3-sysversioning, feature flags, safety changes [[@abonander]]libsqlite3-sysversion is now specified using a range.The maximum of the range may now be increased in any backwards-compatible release.
The minimum of the range may only be increased in major releases.
If you have
libsqlite3-sysin your dependencies, Cargo should choose a compatible version automatically.If otherwise unconstrained, Cargo should choose the latest version supported.
sqlx-tomlfeature) is nowunsafe.sqlite-deserializeenablingSqliteConnection::serialize()andSqliteConnection::deserialize()sqlite-load-extensionenablingSqliteConnectOptions::extension()and::extension_with_entrypoint()sqlite-unlock-notifyenables internal use ofsqlite3_unlock_notify()SqliteValueandSqliteValueRefchanges:sqlite3_value*interface reserves the right to be stateful.Without protection, any call could theoretically invalidate values previously returned, leading to dangling pointers.
SqliteValueis now!SyncandSqliteValueRefis!Sendto prevent data races from concurrent accesses.SqliteValueinMutex, or convert theSqliteValueRefto an owned value.SqliteValueand any derivedSqliteValueRefs now internally track if that value has been used to decode aborrowed
&[u8]or&strand errors if it's used to decode any other type.per
SqliteValue/SqliteValueRef.SqliteValuefor details.PgLTree::fromtoFrom<Vec<PgLTreeLabel>>implementation [[@JerryQ17]]SqliteArguments[[@iamjpotts]].pgpassfile handling did not process backslash-escapes in the password part.Now it does, which may change what password is sent to the server.
#[derive(sqlx::Type)]automatically generateimpl PgHasArrayTypeby default for newtype structs [[@papaj-na-wrotkach]]Delete the manual impl or add
#[sqlx(no_pg_array)]where conflicts occur.offlineoptional to allow building withoutserde[[@CathalMullan]]mysql-rsafeatureor an error will be generated at runtime. RSA encryption is only used for plaintext (non-TLS) connections.
AnyTypeInfo[[@abonander]]Added
Arc<str>andArc<[u8]>(andRcequivalents) [[@joeydewaal]]runtime-smolandruntime-async-global-executorfeatures to replace usages of the deprecatedasync-stdcrate.no_txmigration support [[@AlexTMjugador]]Migrator::with_migrations()constructor [[@xb284524239]]sqlx.toml, update SQLite extension example [[@supleed2]]Json::into_inner()[[@chrxn1c]]SqlStr[[@joeydewaal]]PgNotificationstruct clone [[@michaelvanstraten]]Changed
OnceCell/Lazywith stdOnceLock/LazyLock[[@paolobarbolini]]Debugimplementations acrossPgRow,MySqlRowandSqliteRow[[@davidcornu]]QueryLoggerback [[@joeydewaal]].bind()inREADME.md[[@sobolevn]]randetceterato0.11.0libsqlite3-sysversion range to<0.38.0Fixed
futuresandfutures-util[[@paolobarbolini]]Pool.close: close all connections before returning [[@jpmelos]]ROLLBACKtransaction when dropped duringBEGIN. [[@kevincox]].envloading, caching, and invalidation [[@abonander]]which served as a useful comparison.
Command::cargo_bin()[[@abonander]]SASLprep[[@var4yn]]from_utf8_uncheckedwithfrom_utf8in SQLite column name handling [[@barry3406]]StdSocket::poll_ready()[[@abonander]]dtolnay/thiserror (thiserror)
v2.0.21Compare Source
v2.0.20Compare Source
v2.0.19Compare Source
v2.0.18Compare Source
needless_lifetimes = "forbid"(#443, thanks @LucaCappelletti94)tokio-rs/tokio (tokio)
v1.54.1: Tokio v1.54.1Compare Source
1.54.1 (October 21st, 2026)
Fixed
v1.54.0: Tokio v1.54.0Compare Source
1.54.0 (October 19th, 2026)
The 1.54.0 release includes all changes up to 1.53.3.
The MSRV is increased to 1.85. (#8514)
Added
File::set_times,File::set_modified, andfs::FileTimes(#8504)Defaultfornamed_pipe::{ClientOptions, ServerOptions}(#8378)Builder::max_io_events_per_busy_tick(#8410)tokio::runtime::worker_index()(#8431)SemaphorePermit::semaphore()(#8482)blocking_acquiremethods toSemaphore(#8269)watch::Receiver::is_closed(#8481)wasm32-unknown-emscriptentarget (#8281, #8422, #8528, #8628)Changed
File::set_max_buf_size(#8449)copy_bufcooperative (#8459)BufReaderorBufStreamis created with zero capacity (#8494)copy_bidirectional_with_sizes(#8454)Sink(#8663)UnixStream::pairandUnixDatagram::pairsockets as writable (#8444)UCredon Fuchsia (#8257)mio::unix::pipefor Unix child stdio (#8603)enable_ioavailable wheneverrtis enabled (#8387)block_in_placesetup into a non-generic function (#8315)max_io_events_per_tickis zero (#8476).awaitin nestedblock_onpanic message (#8501)Notify(#8325)Fixed
Fileinternal state when op fails (#8291)copy_buf(#8424)ScheduledIotick in readiness events (#8331)ErrorKind::Interruptedin more I/O operations (#8417, #8432, #8448, #8453, #8455, #8460)spawn_mandatory_blockingfor stdout and stderr (#8506)BufReaderseeks (#8599)CreateFileWhandle onSetNamedPipeHandleStatefailure (#8418)TcpSocketandUnixSocketlisten backlog (#8511)ENOTCONNas success inUnixStream::shutdown(#8526)--all-featureswithouttokio_unstable(#8401)shutdown_timeout()(#8497)spawn_blockinghang when only scheduler workers exist (#8408)usizefor permit count inSemaphorePermit(#8405)Unstable
io_uringhas no IO driver (#8165)spawn_blockingqueue (#8337)Documented
tokio::fs(#8265)from_raw_handle(#8378)TcpStream::connectreturns only the last error (#8421)runtime::Builder(#8297)available_parallelismin worker count docs (#8625)broadcast::channel()(#8420)Semaphoredocumentation (#8521)v1.53.3: Tokio v1.53.3Compare Source
1.53.3 (October 13th, 2026)
Added
AsyncFd::registerandAsyncFd::register_with_interest(#8587)Changed
AsyncFd::{new, with_interest, try_new, try_with_interest}(#8587)Fixed
DuplexStreamwakers outside the lock (#8618)unreachable_codeinjoin!andtry_join!forInfallible(#8518)current_thread(#8595)Fixed (unstable)
io_uringop alive when submission fails after push (#8185)v1.53.2: Tokio v1.53.2Compare Source
1.53.2 (October 3rd, 2026)
Fixed
AsyncFdregistration list on deregister" (#8540)Permitbefore sending value (#8560)MAX_PERMITSinSemaphore::acquire(#8548)Sender::closedoutside mutex (#8558)JoinSet(#8554)clear_entry(#8552)Fixed (unstable)
io_uringread length tou32::MAX(#8572)current_threadtask dumps from other runtimes (#8544)io_uringcontext if a completion waker panics (#8566)v1.53.1: Tokio v1.53.1Compare Source
1.53.1 (July 20th, 2026)
Fixed
OnceLock::waitfrom the Windows handler (#8300)Fixed (unstable)
Documented
v1.53.0: Tokio v1.53.0Compare Source
1.53.0 (July 17th, 2026)
Added
From<OwnedFd>andFrom<OwnedHandle>forFile(#8266)SocketAddrmethods to Unix sockets (#8144)Changed
#[inline]to IO trait impls for in-memory types (#8242)mpsc::{Receiver,UnboundedReceiver}now drops waker on drop, even if there are still senders (#8095)#[track_caller]totimeout_at()(#8077)Sleep(#8132)Fixed
Chain(#8251)FastRand(#8078)reserve[_many]returns permits (#8260)Trace::capture/Trace::trace_with(#8043).reset()(#8169)IO uring (unstable)
fs::try_exists(#8080)Documented
create_dir_allsucceeds if path exists (#8149)try_read*/try_write*readiness behavior (#8032)yield_nowdefers its waker (#8254)timeout_at()(#8077)v1.52.4: Tokio v1.52.4Compare Source
1.52.4 (July 16th, 2026)
Fixed
before_parkschedules work (#8222)Fixed (unstable)
v1.52.3: Tokio v1.52.3Compare Source
1.52.3 (May 8th, 2026)
Fixed
len()(#8062)OwnedPermit::release()method (#8075)RwLockhasmax_readers != 0(#8076)Emptyfromtry_recv()when mpsc is closed with outstanding permits (#8074)v1.52.2: Tokio v1.52.2Compare Source
1.52.2 (May 4th, 2026)
This release reverts the LIFO slot stealing change introduced in 1.51.0 (#7431), due to its performance impact. (#8100)
v1.52.1: Tokio v1.52.1Compare Source
1.52.1 (April 16th, 2026)
Fixed
spawn_blockingto hang (#8057)v1.52.0: Tokio v1.52.0Compare Source
1.52.0 (April 14th, 2026)
Added
AioSource::register_borrowedfor I/O safety support (#7992)try_iofunction tounix::pipesender and receiver types (#8030)Added (unstable)
Builder::enable_eager_driver_handoffsetting enable eager hand off of the I/O and time drivers before polling tasks (#8010)trace_with()for customized task dumps (#8025)impl FnMut()intrace_withinstead of justfn()(#8040)io_uringinAsyncReadforFile(#7907)Changed
spawn_blockingscalability with sharded queue (#7757)compare_exchange_weak()in worker queue (#8028)Fixed
Documented
oneshot::Sender::senddocs (#8026)sync::watch(#8035)ConnectionRefusederrors with UDP sockets (#7870)v1.51.6: Tokio v1.51.6Compare Source
1.51.6 (October 13th, 2026)
Added
AsyncFd::registerandAsyncFd::register_with_interest(#8587)Changed
AsyncFd::{new, with_interest, try_new, try_with_interest}(#8587)Fixed
DuplexStreamwakers outside the lock (#8618)unreachable_codeinjoin!andtry_join!forInfallible(#8518)current_thread(#8595)v1.51.5: Tokio v1.51.5Compare Source
1.51.5 (October 3rd, 2026)
Fixed
AsyncFdregistration list on deregister" (#8540)Permitbefore sending value (#8560)MAX_PERMITSinSemaphore::acquire(#8548)Sender::closedoutside mutex (#8558)JoinSet(#8554)clear_entry(#8552)Fixed (unstable)
current_threadtask dumps from other runtimes (#8544)io_uringcontext if a completion waker panics (#8566)v1.51.4: Tokio v1.51.4Compare Source
1.51.4 (July 16th, 2026)
Fixed
before_parkschedules work (#8222)v1.51.3: Tokio v1.51.3Compare Source
1.51.3 (May 8th, 2026)
Fixed
len()(#8062)OwnedPermit::release()method (#8075)RwLockhasmax_readers != 0(#8076)Emptyfromtry_recv()when mpsc is closed with outstanding permits (#8074)v1.51.2: Tokio v1.51.1Compare Source
1.51.2 (May 4th, 2026)
This release reverts the LIFO slot stealing change introduced in 1.51.0 (#7431), due to its performance impact. (#8100)
v1.51.1: Tokio v1.51.1Compare Source
1.51.1 (April 8th, 2026)
Fixed
SO_ERRORonrecvfor UDP sockets on Linux (#8001)Fixed (unstable)
worker_local_schedule_counttest (#8008)v1.51.0: Tokio v1.51.0Compare Source
1.51.0 (April 3rd, 2026)
Added
get_peer_credon Hurd (#7989)tokio::runtime::worker_index()(#7921)LocalRuntime(#7557)Changed
Fixed
notify_waiterspriority inNotify(#7996)Chan::recv_manywhen called with non-empty vector on closed channel (#7991)v1.50.0: Tokio v1.50.0Compare Source
1.50.0 (Mar 3rd, 2026)
Added
TcpStream::set_zero_linger(#7837)is_rt_shutdown_err(#7771)Changed
memchrreturns in-bounds pointer (#7792)write_buf(#7871)event_intervalis set to 0 (#7838)SetConsoleCtrlHandler(#7833)Registry(#7885)Fixed
AsyncFdregistration list on deregister (#7773)usedeclarations intokio::select!(#7929)GET_BUF_SIZEconstant fortarget_os = "android"(#7889)current_threadifbefore_parkdefers waker (#7835)block_in_place(#7879)num_idle_threadson shutdown (#7910, #7918, #7922)Unstable
Documented
AsyncWriteExt::shutdown()(#7908)AsyncWritedocumentation (#7875)Runtime::spawn(#7803)event_intervaldoc (#7932)recvreturnsNoneonce closed and no more messages (#7920)spawn_blockingvs dedicated threads (#7923)JoinHandlecompletion (#7825)None(#7869)Builder::spawn_local(#7828)v1.49.0: Tokio v1.49.0Compare Source
1.49.0 (January 3rd, 2026)
Added
TCLASSoption on IPv6 (#7781)runtime::id::Id(#7125)ExtendforJoinSet(#7195)LocalSet::id()(#7776)Changed
{TcpStream,TcpSocket}::set_linger(#7752)Fixed
join!andtry_join!(#7766)TryRecvError::DisconnectedfromReceiver::try_recvafterReceiver::close(#7686)Debugimplementation (#7720)Unstable
EINTRinfs::writefor io-uring (#7786)tokio::fs::read(#7696)EPERM(#7724)Documented
bounded.rsandpark.rs(#7817)SyncIoBridgecross-references tocopyandcopy_buf(#7798)AsyncWritedoes not inherit fromstd::io::Write(#7705)num_alive_tasksis not strongly consistent (#7614)TcpStream::peek(#7305)unix::OwnedWriteHalf(#7742)TcpSocketdocs (#7738)LocalRuntimeinnew_current_threaddocs (#7820)mpsc::Sender::try_senddocs (#7721)oneshot::Receiver(#7780)errorsof mpsc (#7722)spawn_localusage on local runtime (#7689)tower-rs/tower-http (tower-http)
v0.7.1Compare Source
Added
fs: addServeDir::redirect_to_trailing_slash()to serve directory indexes directly instead of first redirecting to the trailing-slash path. The redirect remains the default (#728)fs: addignore_multi_range_requests()toServeDirandServeFile, serving the full representation when a request asks for multiple byte ranges. The existing416 Range Not Satisfiableresponse remains the default (#727)request-id: the constructors and accessors on the request-id layers, services, andRequestIdare nowconst fn, so they can be used in const context (#716)Changed
fs: the minimumhttp-range-headerrequirement is now 0.4.2 (#661)Fixed
fs: makeServeDir::try_callpropagate expected filesystemI/O errors when no fallback is configured, as documented, instead of converting
them to
404 Not Foundresponses (#718)decompression: don't end the body when a data frame with no remaining bytesarrives after the decompressor reports end-of-stream. Trailers following such a
frame were dropped and could not be recovered (#722)
decompression: return a body error when a data frame with remaining bytesarrives after the decompressor reports end-of-stream, rather than silently
truncating. This regressed in 0.7.0 (#712)
fs: multipart range requests are now rejected before range validation, sothey consistently return
416 Range Not Satisfiablewith aCannot serve multipart range requestsbody instead of a genericunsatisfiable-range response (#661)
fs: range error responses no longer carry representation headers such asContent-TypeandContent-Encoding(#727)set-header:SetMultipleResponseHeadersLayerandSetMultipleResponseHeaderare now
Cloneregardless of the response body type, matching the fix appliedto the request-side types in 0.7.0 (#714)
All the changes
New Contributors
v0.7.0Compare Source
Changes since 0.6.11
Added
csrf: add cross-site request forgery (CSRF) protection middleware, porting the cross-origin protection scheme introduced in Go 1.25 (#699)timeout: addDeadlineBodyfor non-resetting body timeouts, applied via the newRequestBodyDeadlineLayerandResponseBodyDeadlineLayer(#688)Unlike
TimeoutBody, which resets its deadline on every frame,DeadlineBodycaps the total time of a body transfer. A slow client trickling one byte at a time never trips an idle timeout but will trip a deadline.fs: add strongETagsupport toServeDir, includingIf-MatchandIf-None-Matchprecondition handling per RFC 9110.304 Not Modifiedresponses now carry theETagandLast-Modifiedvalidators (#691)fs: add aBackendtrait to makeServeDirwork with non-filesystem sources (e.g. embedded assets or object storage). The defaultTokioBackendpreserves existing behavior. UseServeDir::with_backend()to plug in custom implementations (#684)fs: addhtml_as_default_extensionoption toServeDir, appending.htmlwhen the request path has no extension (#519)fs: addredirect_path_prefixoption toServeDir, prepending a prefix on trailing-slash redirects so the service can be mounted under a sub-path (#486)validate-request: addValidateRequestHeaderLayer::has_header_value()to reject requests when a header does not have an expected value (#360)body:UnsyncBoxBody::new()constructor andFrom<ServeFileSystemResponseBody>conversion to avoid double-boxing when combiningServeDirresponses with other body types (#537)limit: implementDefaultforlimit::ResponseBodywhen the wrapped body also implementsDefault(#679)Changed
breaking:
compression: the middleware now handles the*wildcard andidentity;q=0in Accept-Encoding per RFC 9110 §12.5.3. Requests that previously fell back to identity (e.g.*;q=0oridentity;q=0with no other acceptable encoding) now receive a 406 Not Acceptable response. Clients that explicitly reject all encodings without listing an alternative will see different behavior. (#693)breaking:
compression: upgrade theSizeAbovepredicate threshold fromu16tou64, allowing minimum sizes above 64 KiB (#704)breaking: remove the implicit no-op
tokioandasync-compressionfeatures. These were kept as no-op features in 0.6.x for backwards compatibility after the switch todep:syntax in #642. Downstream crates that activatetower-http/tokioortower http/async-compressionshould remove those feature entries; the underlying dependencies are still pulled in transitively by the features that need them (e.g.compression-gzip,fs,timeout). (#628)breaking:
trace/classify: include the gRPC error message in tracing output.GrpcCodeandGrpcFailureClassare now#[non_exhaustive], andGrpcStatusis exported from theclassifymodule (#422)breaking:
follow-redirect:FollowRedirectnow forwards requestExtensionsto redirected requests instead of dropping them. TheStandardpolicy drops extensions on cross-origin redirections (same-origin keeps them). Opt out withFollowRedirectLayer::preserve_extensions(false); keep specific types withFilterCredentials::allow_extension::<T>()or all of them withkeep_all_extensions(). (#706)breaking:
follow-redirect: header and extension filtering is now cumulative. A value a policy drops on one hop is no longer replayed on later hops, soFilterCredentialsno longer re-sendsCookie/Authorizationto a same-origin target reached after cross-origin hop. CustomPolicy::on_requestimpls now see the previous hop's filtered request, not the original. (#706)trace:DefaultOnRequest,DefaultOnResponse,DefaultOnFailure, andDefaultOnEosnow explicitly parent their tracing events to the request span rather than relying on the ambient span context. This fixes intermittent cases where events could appear without their request span attached (#690)cors: relax theVaryheader defaults (#674)MSRV bumped from 1.64 to 1.65 (#684)
Fixed
fs:ServeDirandServeFilenow emit aVary: Accept-Encodingresponseheader when precompressed serving is configured, ensuring caches correctly
distinguish between compressed and uncompressed variants (#692)
services: reject a trailing slash for file paths. File requests with a trailing slash now return404 Not Foundinstead of serving the file (#678)fs: fixServeDirstripping the file extension when serving with identity encoding (#686)compression: forward trailers from the inner body after compression finishes, fixing dropped gRPC status trailers (#685)trace: fireon_eoswhen the inner body reportsis_end_streamwith a precise content-length (#687)on-early-drop: suppress the early-drop guard whenis_end_streamis reported after a data frame (#687)set-header: makeSetMultipleRequestHeadersandSetMultipleResponseHeadersClonefor non-CloneHTTP bodies (#703)Thanks
New Contributors
v0.6.11Compare Source
Added
set-header: addSetMultipleResponseHeadersLayerandSetMultipleResponseHeaderfor setting multiple response headers at once.Supports
overriding,appending, andif_not_presentmodes. Headervalues can be fixed or computed dynamically via closures (#672)
set-header: addSetMultipleRequestHeadersLayerandSetMultipleRequestHeadersfor setting multiple request headers at once,mirroring the response-side API (#677)
classify: addFrom<i32>andFrom<NonZeroI32>impls forGrpcCode.Unrecognized status codes map to
GrpcCode::Unknown(#506)Changed
compression: compressapplication/grpc-webresponses. Previously allapplication/grpc*content types were excluded from compression; now onlyapplication/grpc(non-web) is excluded (#408)Fixed
fs: fixServeDirreturning 500 instead of 405 for non-GET/HEAD requestswhen
call_fallback_on_method_not_allowedis enabled but no fallback serviceis configured (#587)
fs: remove duplicatecfgattribute onis_reserved_dos_name(#675)All PRs
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.10...tower-http-0.6.11
v0.6.10Compare Source
Added
follow-redirect: exposeAttempt::method()andAttempt::previous_method()so redirect policies can react to method changes across redirects (e.g.
POST to GET on 301/303) (#559)
Fixed
tokioandasync-compressionas no-op features. These will beremoved next breaking release (#667)
What's Changed
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.9...tower-http-0.6.10
v0.6.9Compare Source
Added:
on-early-drop: middleware that detects when a response future or responsebody is dropped before completion (#636)
Two events get hooks: the response future being dropped before
the inner service produces a response, and the response body being
dropped before reaching end-of-stream.
Install custom callbacks with
OnEarlyDropLayer::builder():Or route both events through a
trace::OnFailurehook withEarlyDropsAsFailures. Place this layer inside aTraceLayerso theemitted events inherit the request span:
fs: makeAsyncReadBody::with_capacitypublic (#415)Changed:
async-compressionfeature is removed (#642)tokiofeature is removed (#628)fs: no longer auto-enables thetracingcrate feature; enabletracingexplicitly to restore error logging on
ServeDirIO failures (#614)Fixed
trace: restore failure classification at end-of-stream (#483)follow-redirect: support unicode URLs (swapsiri-stringdep forurl) (#646)fs: reject reserved Windows DOS device names (CON,COM1, etc.) inServeDir(#663)All the PRs
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.8...tower-http-0.6.9
v0.6.8Compare Source
Fixed
multiple_membersin Gzip decoder, since HTTP context only uses onemember. (#621)
What's Changed
multiple_membersoption for gzip decoder by @ducaale in #621New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.7...tower-http-0.6.8
v0.6.7Compare Source
Added
TimeoutLayer::with_status_code(status)to define the status code returnedwhen timeout is reached. (#599)
Deprecated
auth::require_authorizationis too basic for real-world. (#591)TimeoutLayer::new()should be replaced withTimeoutLayer::with_status_code(). (Previously wasStatusCode::REQUEST_TIMEOUT) (#599)Fixed
on_eosis now called even for successful responses. (#580)ServeDir: call fallback when filename is invalid (#586)decompressionwill not fail when body is empty (#618)New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.6...tower-http-0.6.7
v0.6.6Compare Source
Fixed
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.5...tower-http-0.6.6
v0.6.5Compare Source
Added
append_trailing_slash()mode (#547)Fixed
vary: accept-encodingif already set (#572)New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.4...tower-http-0.6.5
v0.6.4: tower-http 0.6.4Compare Source
Added
ServiceExttrait for chaining layers onto an arbitrary http service justlike
ServiceBuilderExtallows forServiceBuilder(#563)Fixed
S::ErrorforServiceimpls ofRequestBodyTimeout<S>andResponseBodyTimeout<S>(#533)is_end_stream(#535)fs::ServeDir(#553)content-lenghtof 1 in response to range requests to emptyfiles (#556)
AsyncRequireAuthorization, use the original inner service after it isready, instead of using a clone (#561)
v0.6.3: tower-http 0.6.3Compare Source
This release was yanked because its definition of
ServiceExtwas quite unhelpful, in a way that's very unlikely that anybody would start depending on within the small timeframe before this was yanked, but that was technically breaking to change.tokio-rs/tracing (tracing)
v0.1.44: tracing 0.1.44Compare Source
Fixed
record_allpanic (#3432)Changed
tracing-core: updated to 0.1.36 (#3440)v0.1.43: tracing 0.1.43Compare Source
Important
The previous release 0.1.42 was yanked because #3382 was a breaking change.
See further details in #3424. This release contains all the changes from that
version, plus a revert for the problematic part of the breaking PR.
Fixed
valuesetmacro sanitary" (#3425)v0.1.42: tracing 0.1.42Compare Source
Important
The
Span::record_allmethod has been removed from the documented API. Itwas always unsuable via the documented API as it requried a
ValueSetwhichhas no publically documented constructors. The method remains, but should not
be used outside of
tracingmacros.Added
record_all!macro for recording multiple values in one call (#3227)Changed
tracing-core: updated to 0.1.35 (#3414)tracing-attributes: updated to 0.1.31 (#3417)Fixed
event!(#2983)release_max_level_*not set (#3373)valuesetmacro sanitary (#3382)Documented
dynkeyword inVisitdocumentation code sample (#3387)Microsoft/tslib (tslib)
v2.9.1: tslib 2.9.1Compare Source
What's Changed
Full Changelog: https://github.com/microsoft/tslib/compare/v2.8.1...v2.9.1
microsoft/TypeScript (typescript)
v5.9.3: TypeScript 5.9.3Compare Source
Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.
For release notes, check out the release announcement
Downloads are available on:
v5.9.2: TypeScript 5.9Compare Source
Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.
For release notes, check out the release announcement
Downloads are available on:
typescript-eslint/typescript-eslint (typescript-eslint)
v8.72.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.72.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.71.2Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.71.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.71.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.70.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.70.0Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.69.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.68.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.67.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.66.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.65.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.64.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.63.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.62.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.62.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.61.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.61.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.60.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.4Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.3Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.2Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.59.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.2Compare Source
🩹 Fixes
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.58.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.57.2Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.57.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.57.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.56.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.56.0Compare Source
🚀 Features
❤️ Thank You
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.55.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
See GitHub Releases for more information.
You can read about our versioning strategy and releases on our website.
v8.54.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.53.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.53.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.52.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.51.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.50.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.50.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.49.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.48.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.48.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.47.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.46.4Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.46.3Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.46.2Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.46.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.46.0Compare Source
🚀 Features
❤️ Thank You
You can read about our versioning strategy and releases on our website.
v8.45.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.44.1Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.44.0Compare Source
This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.
You can read about our versioning strategy and releases on our website.
v8.43.0Compare Source
🩹 Fixes
❤️ Thank You
You can read about our versioning strategy and releases on our website.
v8.42.0Compare Source
🚀 Features
🩹 Fixes
❤️ Thank You
You can read about our versioning strategy and releases on our website.
uuid-rs/uuid (uuid)
v1.29.0Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.28.0...v1.29.0
v1.28.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.27.0...v1.28.0
v1.27.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.26.1...v1.27.0
v1.26.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1
v1.26.0Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.25.0...v1.26.0
v1.25.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.24.1...1.25.0
v1.24.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.24.0...v1.24.1
v1.24.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.5...v1.24.0
v1.23.5Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.4...v1.23.5
v1.23.4Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.3...v1.23.4
v1.23.3Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.2...v1.23.3
v1.23.2Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.1...v1.23.2
v1.23.1Compare Source
What's Changed
msrvfeature from wasm-bindgen dependency by @guybedford in #877New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.23.0...v1.23.1
v1.23.0Compare Source
What's Changed
New Contributors
Special thanks
@meng-xu-cs raised a series of bugs against the timestamp logic in
uuidusing automated tooling. The issues themselves were reasonably and responsibly presented and the end result is a betteruuidlibrary for everyone. Thanks!Deprecations
This release includes the following deprecations:
Context: Renamed toContextV1Timestamp::from_gregorian: Renamed toTimestamp::from_gregorian_timeChange to
Version::MaxVersion::Max'su8representation has changed from0xffto0x0fto match the value returned byUuid::get_version_num.Change to
Uuid::get_versionfor the max UUIDUuid::get_versionwill only returnSome(Version::Max)if the UUID is actually the max UUID (all bytes are0xff). Previously it would returnSomeif only the version field was0x0f. This change matches the behaviour of the nil UUID, which only returnsSome(Version::Nil)if the UUID is the nil UUID (all bytes are0x00).Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.22.0...v1.23.0
v1.22.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.21.0...v1.22.0
v1.21.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.20.0...v1.21.0
v1.20.0Compare Source
What's Changed
macro-diagnosticsby @KodrAus in #856New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.19.0...v1.20.0
v1.19.0Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.18.1...v1.19.0
v1.18.1Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.18.0...v1.18.1
v1.18.0Compare Source
What's Changed
Timestampandstd::time::SystemTimeby @dcormier in #835New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.17.0...v1.18.0
v1.17.0Compare Source
What's Changed
wasm32v1-noneSupport by @bushrat011899 in #828New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.16.0...v1.17.0
vuejs/core (vue)
v3.5.44Compare Source
Bug Fixes
0andfalseinv-html(#15571) (9f3b437)v3.5.43Compare Source
Bug Fixes
v3.5.42Compare Source
Bug Fixes
v3.5.41Compare Source
Bug Fixes
v3.5.40Compare Source
Bug Fixes
v3.5.39Compare Source
Bug Fixes
v3.5.38Compare Source
v3.5.37Compare Source
v3.5.36Compare Source
Bug Fixes
once: true(#14902) (450a8a8)v3.5.35Compare Source
Bug Fixes
ssrRenderSuspense(#14804) (4760997), closes nuxt/nuxt#28162Performance Improvements
v3.5.34Compare Source
Bug Fixes
<image>elements (#14756) (090b2e3)v3.5.33Compare Source
Bug Fixes
v3.5.32Compare Source
Bug Fixes
Reverts
v3.5.31Compare Source
Bug Fixes
v3.5.30Compare Source
Bug Fixes
entitiesto @vue/compat deps to fix CJS edge cases (#12514) (e725a67), closes #10609Setwith initial reactive values edge case (#12393) (5dc27ca), closes #8647v3.5.29Compare Source
Bug Fixes
v3.5.28Compare Source
Bug Fixes
cancelledparameter in transitiondonecallback (#14391) (6798853).mts/.ctsfiles (#14402) (c09d41f), closes vuejs/router#2611__v_skipflag toEffectScopeto prevent reactive conversion (#14359) (48b7552), closes #14357v3.5.27Compare Source
Bug Fixes
definePropsdestructuring. (#14296) (6a1bb50), closes #14294v3.5.26Compare Source
Bug Fixes
Performance Improvements
v3.5.25Compare Source
Bug Fixes
provideafter mounting (#13954) (247b2c2), closes #13921 #13924Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate CLI.
236e46c54e0f4f3149bb0f4f3149bb107efdd65f107efdd65fc2474491e2Update all dependenciesto Update all non-major dependenciesc2474491e2bbd917c22bbbd917c22b3bc34be4703bc34be4706eb282b97c6eb282b97c7dcafa22d37dcafa22d3cfc4e60ee4cfc4e60ee496cc01431e96cc01431ecf1942a9e4cf1942a9e4f7395522e3f7395522e32da94b4effView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.