From 91e00f08d0d574ba18501f1e10731f81495439d2 Mon Sep 17 00:00:00 2001
From: renovate <29139614+renovate@users.noreply.github.com>
Date: Fri, 28 Feb 2025 13:39:39 +0000
Subject: [PATCH] chore: bump up rustc version to v1.85.0 (#10515)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [rustc](https://redirect.github.com/rust-lang/rust) | minor | `1.84.1` -> `1.85.0` |
---
### Release Notes
rust-lang/rust (rustc)
### [`v1.85.0`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1850-2025-02-20)
[Compare Source](https://redirect.github.com/rust-lang/rust/compare/1.84.1...1.85.0)
\==========================
## Language
- [The 2024 Edition is now stable.](https://redirect.github.com/rust-lang/rust/pull/133349)
See [the edition guide](https://doc.rust-lang.org/nightly/edition-guide/rust-2024/index.html) for more details.
- [Stabilize async closures](https://redirect.github.com/rust-lang/rust/pull/132706)
See [RFC 3668](https://rust-lang.github.io/rfcs/3668-async-closures.html) for more details.
- [Stabilize `#[diagnostic::do_not_recommend]`](https://redirect.github.com/rust-lang/rust/pull/132056)
- [Add `unpredictable_function_pointer_comparisons` lint to warn against function pointer comparisons](https://redirect.github.com/rust-lang/rust/pull/118833)
- [Lint on combining `#[no_mangle]` and `#[export_name]` attributes.](https://redirect.github.com/rust-lang/rust/pull/131558)
## Compiler
- [The unstable flag `-Zpolymorphize` has been removed](https://redirect.github.com/rust-lang/rust/pull/133883), see [https://github.com/rust-lang/compiler-team/issues/810](https://redirect.github.com/rust-lang/compiler-team/issues/810) for some background.
## Platform Support
- [Promote `powerpc64le-unknown-linux-musl` to tier 2 with host tools](https://redirect.github.com/rust-lang/rust/pull/133801)
Refer to Rust's \[platform support page]\[platform-support-doc]
for more information on Rust's tiered platform support.
## Libraries
- [Panics in the standard library now have a leading `library/` in their path](https://redirect.github.com/rust-lang/rust/pull/132390)
- [`std::env::home_dir()` on Windows now ignores the non-standard `$HOME` environment variable](https://redirect.github.com/rust-lang/rust/pull/132515)
It will be un-deprecated in a subsequent release.
- [Add `AsyncFn*` to the prelude in all editions.](https://redirect.github.com/rust-lang/rust/pull/132611)
## Stabilized APIs
- [`BuildHasherDefault::new`](https://doc.rust-lang.org/stable/std/hash/struct.BuildHasherDefault.html#method.new)
- [`ptr::fn_addr_eq`](https://doc.rust-lang.org/std/ptr/fn.fn_addr_eq.html)
- [`io::ErrorKind::QuotaExceeded`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.QuotaExceeded)
- [`io::ErrorKind::CrossesDevices`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.CrossesDevices)
- [`{float}::midpoint`](https://doc.rust-lang.org/core/primitive.f32.html#method.midpoint)
- [Unsigned `{integer}::midpoint`](https://doc.rust-lang.org/std/primitive.u64.html#method.midpoint)
- [`NonZeroU*::midpoint`](https://doc.rust-lang.org/std/num/type.NonZeroU32.html#method.midpoint)
- [impl `std::iter::Extend` for tuples with arity 1 through 12](https://doc.rust-lang.org/stable/std/iter/trait.Extend.html#impl-Extend%3C\(A,\)%3E-for-\(EA,\))
- [`FromIterator<(A, ...)>` for tuples with arity 1 through 12](https://doc.rust-lang.org/stable/std/iter/trait.FromIterator.html#impl-FromIterator%3C\(EA,\)%3E-for-\(A,\))
- [`std::task::Waker::noop`](https://doc.rust-lang.org/stable/std/task/struct.Waker.html#method.noop)
These APIs are now stable in const contexts:
- [`mem::size_of_val`](https://doc.rust-lang.org/stable/std/mem/fn.size_of_val.html)
- [`mem::align_of_val`](https://doc.rust-lang.org/stable/std/mem/fn.align_of_val.html)
- [`Layout::for_value`](https://doc.rust-lang.org/stable/std/alloc/struct.Layout.html#method.for_value)
- [`Layout::align_to`](https://doc.rust-lang.org/stable/std/alloc/struct.Layout.html#method.align_to)
- [`Layout::pad_to_align`](https://doc.rust-lang.org/stable/std/alloc/struct.Layout.html#method.pad_to_align)
- [`Layout::extend`](https://doc.rust-lang.org/stable/std/alloc/struct.Layout.html#method.extend)
- [`Layout::array`](https://doc.rust-lang.org/stable/std/alloc/struct.Layout.html#method.array)
- [`std::mem::swap`](https://doc.rust-lang.org/stable/std/mem/fn.swap.html)
- [`std::ptr::swap`](https://doc.rust-lang.org/stable/std/ptr/fn.swap.html)
- [`NonNull::new`](https://doc.rust-lang.org/stable/std/ptr/struct.NonNull.html#method.new)
- [`HashMap::with_hasher`](https://doc.rust-lang.org/stable/std/collections/struct.HashMap.html#method.with_hasher)
- [`HashSet::with_hasher`](https://doc.rust-lang.org/stable/std/collections/struct.HashSet.html#method.with_hasher)
- [`BuildHasherDefault::new`](https://doc.rust-lang.org/stable/std/hash/struct.BuildHasherDefault.html#method.new)
- [`::recip`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.recip)
- [`::to_degrees`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.to_degrees)
- [`::to_radians`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.to_radians)
- [`::max`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.max)
- [`::min`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.min)
- [`::clamp`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.clamp)
- [`::abs`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.abs)
- [`::signum`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.signum)
- [`::copysign`](https://doc.rust-lang.org/stable/std/primitive.f32.html#method.copysign)
- [`MaybeUninit::write`](https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.write)
## Cargo
- [Add future-incompatibility warning against keywords in cfgs and add raw-idents](https://redirect.github.com/rust-lang/cargo/pull/14671/)
- [Stabilize higher precedence trailing flags](https://redirect.github.com/rust-lang/cargo/pull/14900/)
- [Pass `CARGO_CFG_FEATURE` to build scripts](https://redirect.github.com/rust-lang/cargo/pull/14902/)
## Rustdoc
- [Doc comment on impl blocks shows the first line, even when the impl block is collapsed](https://redirect.github.com/rust-lang/rust/pull/132155)
## Compatibility Notes
- [`rustc` no longer treats the `test` cfg as a well known check-cfg](https://redirect.github.com/rust-lang/rust/pull/131729), instead it is up to the build systems and users of `--check-cfg`\[^check-cfg] to set it as a well known cfg using `--check-cfg=cfg(test)`.
This is done to enable build systems like Cargo to set it conditionally, as not all source files are suitable for unit tests.
[Cargo (for now) unconditionally sets the `test` cfg as a well known cfg](https://redirect.github.com/rust-lang/cargo/pull/14963).
\[^check-cfg]: https://doc.rust-lang.org/nightly/rustc/check-cfg.html
- [Disable potentially incorrect type inference if there are trivial and non-trivial where-clauses](https://redirect.github.com/rust-lang/rust/pull/132325)
- `std::env::home_dir()` has been deprecated for years, because it can give surprising results in some Windows configurations if the `HOME` environment variable is set (which is not the normal configuration on Windows). We had previously avoided changing its behavior, out of concern for compatibility with code depending on this non-standard configuration. Given how long this function has been deprecated, we're now fixing its behavior as a bugfix. A subsequent release will remove the deprecation for this function.
- [Make `core::ffi::c_char` signedness more closely match that of the platform-default `char`](https://redirect.github.com/rust-lang/rust/pull/132975)
This changed `c_char` from an `i8` to `u8` or vice versa on many Tier 2 and 3
targets (mostly Arm and RISC-V embedded targets). The new definition may
result in compilation failures but fixes compatibility issues with C.
The `libc` crate matches this change as of its 0.2.169 release.
- [When compiling a nested `macro_rules` macro from an external crate, the content of the inner `macro_rules` is now built with the edition of the external crate, not the local crate.](https://redirect.github.com/rust-lang/rust/pull/133274)
- [Increase `sparcv9-sun-solaris` and `x86_64-pc-solaris` Solaris baseline to 11.4.](https://redirect.github.com/rust-lang/rust/pull/133293)
- [Show `abi_unsupported_vector_types` lint in future breakage reports](https://redirect.github.com/rust-lang/rust/pull/133374)
- [Error if multiple super-trait instantiations of `dyn Trait` need associated types to be specified but only one is provided](https://redirect.github.com/rust-lang/rust/pull/133392)
- [Change `powerpc64-ibm-aix` default `codemodel` to large](https://redirect.github.com/rust-lang/rust/pull/133811)
## 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.
- [Build `x86_64-unknown-linux-gnu` with LTO for C/C++ code (e.g., `jemalloc`)](https://redirect.github.com/rust-lang/rust/pull/134690)
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE).
---
.github/workflows/build-test.yml | 4 ++++
Cargo.toml | 5 ++++-
oxlint.json | 2 +-
.../media_capture/src/macos/screen_capture_kit.rs | 15 ++++++---------
rust-toolchain.toml | 2 +-
5 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml
index 84bcf6464..927849f82 100644
--- a/.github/workflows/build-test.yml
+++ b/.github/workflows/build-test.yml
@@ -309,6 +309,10 @@ jobs:
with:
workspace-copy: true
drive-size: 8GB
+ drive-format: NTFS
+ env-mapping: |
+ CARGO_HOME,{{ DEV_DRIVE }}/.cargo
+ RUSTUP_HOME,{{ DEV_DRIVE }}/.rustup
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
diff --git a/Cargo.toml b/Cargo.toml
index 5483e78f4..11c579b99 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -8,7 +8,10 @@ members = [
"./packages/frontend/native/schema",
"./packages/frontend/native/sqlite_v1",
]
-resolver = "2"
+resolver = "3"
+
+[workspace.package]
+edition = "2024"
[workspace.dependencies]
affine_common = { path = "./packages/common/native" }
diff --git a/oxlint.json b/oxlint.json
index 91da9d2d1..a6bc2a2ef 100644
--- a/oxlint.json
+++ b/oxlint.json
@@ -8,7 +8,7 @@
"ignorePatterns": [
"**/node_modules",
".yarn",
- ".github",
+ ".github/helm",
".vscode",
".yarnrc.yml",
".docker",
diff --git a/packages/frontend/native/media_capture/src/macos/screen_capture_kit.rs b/packages/frontend/native/media_capture/src/macos/screen_capture_kit.rs
index 115750116..4ae6ea626 100644
--- a/packages/frontend/native/media_capture/src/macos/screen_capture_kit.rs
+++ b/packages/frontend/native/media_capture/src/macos/screen_capture_kit.rs
@@ -76,8 +76,11 @@ unsafe impl Encode for NSRect {
static RUNNING_APPLICATIONS: LazyLock>> =
LazyLock::new(|| RwLock::new(audio_process_list().expect("Failed to get running applications")));
+type ApplicationStateChangedSubscriberMap =
+ HashMap>>>;
+
static APPLICATION_STATE_CHANGED_SUBSCRIBERS: LazyLock<
- RwLock>>>>,
+ RwLock,
> = LazyLock::new(|| RwLock::new(HashMap::new()));
static APPLICATION_STATE_CHANGED_LISTENER_BLOCKS: LazyLock<
@@ -348,10 +351,7 @@ impl TappableApplication {
#[napi(constructor)]
pub fn new(object_id: AudioObjectID) -> Result {
// Get process ID from object_id
- let process_id = match get_process_property(&object_id, kAudioProcessPropertyPID) {
- Ok(pid) => pid,
- Err(_) => -1,
- };
+ let process_id = get_process_property(&object_id, kAudioProcessPropertyPID).unwrap_or(-1);
// Create base Application
let app = Application::new(process_id)?;
@@ -686,10 +686,7 @@ impl ShareableContent {
#[napi]
pub fn application_with_process_id(&self, process_id: u32) -> Option {
// Get NSRunningApplication class
- let running_app_class = match NSRUNNING_APPLICATION_CLASS.as_ref() {
- Some(class) => class,
- None => return None,
- };
+ let running_app_class = NSRUNNING_APPLICATION_CLASS.as_ref()?;
// Get running application with PID
let running_app: *mut AnyObject = unsafe {
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index 5a09b9bb8..aaba1588e 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -1,3 +1,3 @@
[toolchain]
-channel = "1.84.1"
+channel = "1.85.0"
profile = "default"