Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

deps: replace vendored refresh_rate 1.0.2 with upstream 2.0.1

Ouverte
#1,584 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
42/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
Active
Stack technique
dart, flutter
Domaine
desktop, devtools

Piste de recherche

Start by verifying the refresh_rate publisher transfer and reviewing the native diff from 1.0.2 to 2.0.1, especially the Linux, Windows, and macOS changes. Then inspect pubspec.yaml, third_party/refresh_rate/, third_party/README.md, and lib/core/motion/display_refresh_service.dart; finish by checking CI on Linux, Windows, and macOS and confirming the dependency override and vendored copy are removed.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

enhancement motion P3

Summary

third_party/refresh_rate is a vendored copy of refresh_rate 1.0.2 kept only for two build fixes. Upstream 2.0.1 appears to fix both natively, so the fork can likely be dropped in favour of refresh_rate: ^2.0.1.

Why the fork exists vs. 2.0.1

Reason for the fork In 2.0.1
Linux -Werror: uninitialized rates[0] Linux plugin rewritten on generated Pigeon GObject bindings; the hand-rolled rates array is gone
macOS SPM: Package.swift pointed at ../Classes, outside the package root (#555) Package.swift uses path: "Sources/refresh_rate" inside the package

App compatibility

Only lib/core/motion/display_refresh_service.dart uses the package.

  • RefreshRate.enable() now returns Future<RateRequestResult>; we call it unawaited (wrap in unawaited(...) if the lint is on).
  • showHz() and info.{currentRate,maxRate,isVariableRefreshRate} are source-compatible.
  • DisplayRefreshService.currentHz / maxHz have no other callers.

Behaviour changes: on Linux maxRate is 0.0 (was max across monitors) and unknown values no longer fall back to 60 Hz. info is populated asynchronously, so the first debug log may show 0 Hz.

Tasks

  • Verify the package publisher: repository moved from qoder-official/refresh_rate to afewgoodcoders/refresh_rate while the Android package is still in.qoder.refresh_rate. Confirm it is a legitimate transfer and skim the native diff 1.0.2 → 2.0.1 (Windows and macOS changed too).
  • pubspec.yaml: refresh_rate: ^2.0.1, remove the refresh_rate entry from dependency_overrides.
  • Delete third_party/refresh_rate/ and update third_party/README.md if it references it.
  • CI green on Linux (-Werror), Windows and macOS.
  • Follow-up, separate PR: reconsider flutter.config.enable-swift-package-manager: false. It disables SPM for all plugins, not just this one.

Fallback

If the Linux -Werror build or Windows/macOS breaks on upstream 2.0.1, keep the fork and re-vendor 2.0.1 with only the needed patch.

Found during the dependency review.

Langage dominant
Dart
Étoiles
23
Forks
1
Merge moyen
31 min
PR mergées (30 j)
570

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de QueryaHub/Querya-Desktop

Toutes les issues de QueryaHub/Querya-Desktop

Issues similaires

Plus d'issues Dart

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.