Skip to content

Commit ec91f53

Browse files
alexlapatyranron
andauthored
Upgrade Flutter to 3.24 version (#168)
- upgrade Dart dependencies - upgrade Rust dependencies Co-authored-by: Kai Ren <[email protected]>
1 parent 47693ca commit ec91f53

File tree

17 files changed

+494
-253
lines changed

17 files changed

+494
-253
lines changed

Cargo.lock

Lines changed: 356 additions & 128 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ group 'com.instrumentisto.medea_flutter_webrtc'
22
version '0.10.0'
33

44
buildscript {
5-
ext.kotlin_version = '1.7.10'
5+
ext.kotlin_version = '1.9.0'
66
repositories {
77
google()
88
mavenCentral()
99
}
1010

1111
dependencies {
12-
classpath 'com.android.tools.build:gradle:7.2.0'
12+
classpath 'com.android.tools.build:gradle:7.4.2'
1313
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1414
}
1515
}
@@ -26,7 +26,7 @@ apply plugin: 'com.android.library'
2626
apply plugin: 'kotlin-android'
2727

2828
android {
29-
compileSdkVersion 31
29+
compileSdk = 34
3030

3131
defaultConfig {
3232
minSdkVersion 24

crates/libwebrtc-sys/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name = "libwebrtc-sys"
33
version = "0.0.0+127.0.6533.72"
44
edition = "2021"
5-
rust-version = "1.62"
5+
rust-version = "1.75"
66
publish = false
77
links = "webrtc"
88

@@ -12,16 +12,16 @@ fake-media = []
1212
[dependencies]
1313
anyhow = "1.0"
1414
cxx = "1.0"
15-
derive_more = { version = "0.99", features = ["deref", "deref_mut", "from"], default-features = false }
15+
derive_more = { version = "1.0", features = ["deref", "deref_mut", "from"] }
1616

1717
[build-dependencies]
1818
anyhow = "1.0"
1919
cxx-build = "1.0"
2020
flate2 = "1.0"
21-
reqwest = { version = "0.11", features = ["blocking"] }
21+
reqwest = { version = "0.12", features = ["blocking"] }
2222
sha2 = "0.10"
2323
tar = "0.4"
24-
walkdir = "2.3"
24+
walkdir = "2.5"
2525

2626
[target.'cfg(target_os = "linux")'.build-dependencies]
2727
pkg-config = "0.3"

crates/libwebrtc-sys/build.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -347,9 +347,7 @@ fn download_libwebrtc() -> anyhow::Result<()> {
347347
// Force download if `INSTALL_WEBRTC=1`.
348348
if env::var("INSTALL_WEBRTC").as_deref().unwrap_or("0") == "0" {
349349
// Skip download if already downloaded and checksum matches.
350-
if fs::metadata(&lib_dir)
351-
.map(|m| m.is_dir())
352-
.unwrap_or_default()
350+
if fs::metadata(&lib_dir).is_ok_and(|m| m.is_dir())
353351
&& fs::read(&checksum).unwrap_or_default().as_slice()
354352
== expected_hash.as_bytes()
355353
{

crates/native/Cargo.toml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "medea-flutter-webrtc-native"
33
edition = "2021"
4-
rust-version = "1.70"
4+
rust-version = "1.75"
55
publish = false
66

77
[lib]
@@ -10,24 +10,24 @@ crate-type = ["cdylib"]
1010
[dependencies]
1111
anyhow = "1.0"
1212
cxx = "1.0"
13-
dashmap = "5.4"
14-
derive_more = "0.99"
13+
dashmap = "6.0"
14+
derive_more = { version = "1.0", features = ["as_ref", "display", "from", "into"] }
1515
flutter_rust_bridge = { version = "=1.82.4", default-features = false }
1616
flutter_rust_bridge_macros = { version = "=1.82.4", default-features = false }
17-
lazy_static = "1.4"
17+
lazy_static = "1.5"
1818
libwebrtc-sys = { path = "../libwebrtc-sys" }
1919
log = "0.4"
20-
once_cell = "1.17"
20+
once_cell = "1.19"
2121
threadpool = "1.8"
2222
xxhash = { package = "xxhash-rust", version = "0.8", features = ["xxh3"] }
2323

2424
[target.'cfg(target_os = "linux")'.dependencies]
2525
libudev = "0.3"
26-
nix = { version = "0.27", features = ["poll", "signal"] }
27-
pulse = { version = "2.27", package = "libpulse-binding" }
26+
nix = { version = "0.29", features = ["poll", "signal"] }
27+
pulse = { version = "2.28", package = "libpulse-binding" }
2828

2929
[target.'cfg(target_os = "windows")'.dependencies]
30-
windows = { version = "0.52", features = ["implement", "Win32_Foundation", "Win32_Graphics_Gdi", "Win32_Media_Audio", "Win32_System_Com", "Win32_UI_Shell_PropertiesSystem", "Win32_UI_WindowsAndMessaging"] }
30+
windows = { version = "0.58", features = ["implement", "Win32_Foundation", "Win32_Graphics_Gdi", "Win32_Media_Audio", "Win32_System_Com", "Win32_UI_Shell_PropertiesSystem", "Win32_UI_WindowsAndMessaging"] }
3131

3232
[build-dependencies]
3333
anyhow = "1.0"

crates/native/src/devices.rs

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@ pub mod linux_device_change {
394394
// `socket`.
395395
let socket_fd =
396396
unsafe { BorrowedFd::borrow_raw(socket.as_raw_fd()) };
397-
let fds = PollFd::new(&socket_fd, PollFlags::POLLIN);
397+
let fds = PollFd::new(socket_fd, PollFlags::POLLIN);
398398
loop {
399399
ppoll(&mut [fds], None, None)?;
400400

@@ -570,7 +570,7 @@ mod win_default_device_callback {
570570
Win32::{
571571
Media::Audio::{
572572
EDataFlow, ERole, IMMDeviceEnumerator, IMMNotificationClient,
573-
IMMNotificationClient_Impl, MMDeviceEnumerator,
573+
IMMNotificationClient_Impl, MMDeviceEnumerator, DEVICE_STATE,
574574
},
575575
System::Com::{CoCreateInstance, CLSCTX_ALL},
576576
UI::Shell::PropertiesSystem::PROPERTYKEY,
@@ -593,8 +593,12 @@ mod win_default_device_callback {
593593
struct AudioEndpointCallback;
594594

595595
#[allow(non_snake_case)]
596-
impl IMMNotificationClient_Impl for AudioEndpointCallback {
597-
fn OnDeviceStateChanged(&self, _: &PCWSTR, _: u32) -> Result<()> {
596+
impl IMMNotificationClient_Impl for AudioEndpointCallback_Impl {
597+
fn OnDeviceStateChanged(
598+
&self,
599+
_: &PCWSTR,
600+
_: DEVICE_STATE,
601+
) -> Result<()> {
598602
Ok(())
599603
}
600604

@@ -741,11 +745,19 @@ pub unsafe fn init() {
741745
0,
742746
None,
743747
None,
744-
HMODULE(0),
748+
HMODULE(ptr::null_mut()),
745749
None,
746750
);
747751

748-
ShowWindow(hwnd, SW_HIDE);
752+
let Ok(hwnd) = hwnd else {
753+
log::error!(
754+
"Failed to create window so on device change listener is \
755+
disabled",
756+
);
757+
return;
758+
};
759+
760+
_ = ShowWindow(hwnd, SW_HIDE);
749761

750762
let mut msg: MSG = mem::zeroed();
751763

@@ -754,7 +766,7 @@ pub unsafe fn init() {
754766
break;
755767
}
756768

757-
TranslateMessage(&msg);
769+
_ = TranslateMessage(&msg);
758770
DispatchMessageW(&msg);
759771
}
760772
});

example/android/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
buildscript {
2-
ext.kotlin_version = '1.6.21'
2+
ext.kotlin_version = '1.9.0'
33
repositories {
44
google()
55
mavenCentral()
66
}
77

88
dependencies {
9-
classpath 'com.android.tools.build:gradle:7.4.2'
10-
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
9+
classpath("com.android.tools.build:gradle:7.4.2")
10+
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version")
1111
}
1212
}
1313

example/lib/src/create_peer_connection.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import 'package:medea_flutter_webrtc/medea_flutter_webrtc.dart';
77
class PeerConnectionSample extends StatefulWidget {
88
static String tag = 'peer_connection_sample';
99

10-
const PeerConnectionSample({Key? key}) : super(key: key);
10+
const PeerConnectionSample({super.key});
1111

1212
@override
1313
State<PeerConnectionSample> createState() => _PeerConnectionSampleState();

example/lib/src/get_display_media.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import 'package:medea_flutter_webrtc/medea_flutter_webrtc.dart';
1010
class GetDisplayMediaSample extends StatefulWidget {
1111
static String tag = 'get_display_media_sample';
1212

13-
const GetDisplayMediaSample({Key? key}) : super(key: key);
13+
const GetDisplayMediaSample({super.key});
1414

1515
@override
1616
State<GetDisplayMediaSample> createState() => _GetDisplayMediaSampleState();

example/lib/src/get_sources.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import 'package:medea_flutter_webrtc/medea_flutter_webrtc.dart';
66
class GetSourcesSample extends StatefulWidget {
77
static String tag = 'get_sources_sample';
88

9-
const GetSourcesSample({Key? key}) : super(key: key);
9+
const GetSourcesSample({super.key});
1010

1111
@override
1212
State<GetSourcesSample> createState() => _GetSourcesSampleState();

0 commit comments

Comments
 (0)