Skip to content

deps: refresh_rate 2.0.1 from pub.dev, drop the vendored fork (#1584) - #1725

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
deps/upgrades
Oct 18, 2026
Merged

ZhuchkaTriplesix merged 1 commit into
devfrom
deps/upgrades

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Closes #1584

third_party/refresh_rate (1.0.2 plus a Linux -Werror fix and a macOS Swift package path fix) is gone; pubspec.yaml takes refresh_rate: ^2.0.1 and the dependency_overrides entry is removed.

Checked before switching (the issue's first task):

  • pub.dev: 2.0.1 (2026-09-14) is published by the verified publisher afewgoodcoders.com; the repository moved from qoder-official/refresh_rate (up to 1.0.2) to afewgoodcoders/refresh_rate at 2.0.0, and the Android package is still in.qoder.refresh_rate. That fits a hand-over or rename of the maintainers; I cannot prove it from here, so the decision is yours.
  • Native diff 1.0.2 -> 2.0.1 read for the desktop platforms: Linux (refresh_rate_plugin.cc, 130 lines: g_getenv of WAYLAND_DISPLAY/DISPLAY, GDK monitor query), Windows (refresh_rate_plugin_c_api.cpp, 197 lines), macOS (RefreshRatePlugin.swift, 89 lines: display link and power / thermal notifications). No network, no process execution, no file writes, no library loading; the Dart side has no dart:io or HTTP. The rest is Pigeon-generated.

App changes: DisplayRefreshService wraps RefreshRate.enable() in unawaited (it returns a result now) and notes the two behaviour changes: an unknown rate reads 0 Hz instead of 60, and info fills in asynchronously, so the first debug log can show 0 Hz. Docs that named the vendored plugin are updated.

Verified here (Linux): flutter build linux --debug builds; the profile bench starts the app with the plugin (displayHz=120); motion and app tests pass. Not verified: Windows and macOS builds (CI builds them on this PR); the macOS minimum stays 10.14 for the plugin.

Not changed: flutter.config.enable-swift-package-manager: false stays. It turns Swift Package Manager off for every plugin, and its reason (the vendored plugin's broken Package.swift) no longer applies, but turning it on is a macOS build change I cannot try on Linux; the comment says so. That is the issue's separate follow-up.

Fallback if the Windows or macOS build breaks on 2.0.1: put the fork back and re-vendor 2.0.1 with only the needed patch.

@github-actions github-actions Bot added enhancement New feature or request motion Animation system, transitions, motion tokens P3 Low priority / Polish & Enhancements labels Oct 18, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 64f7bad into dev Oct 18, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request motion Animation system, transitions, motion tokens P3 Low priority / Polish & Enhancements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant