From de3f757aacafee505098300cecfda3bfd864f3ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?An=C4=B1lcan=20=C3=87ak=C4=B1r?= Date: Wed, 26 Aug 2026 00:49:55 +0300 Subject: [PATCH 1/2] chore(release): 0.0.4 MagicPerfIntegration, the performance data path assembled in the one package that can see dusk, telescope, wind and magic at once. Also raises the four sibling floors to what the code actually needs. They were magic ^0.0.6, dusk ^0.0.9, telescope ^0.0.4 and wind ^1.2.1, and every one sat below the release that introduced an API this package calls: onRefreshUI in magic 0.0.7, the perf_readers pointers in dusk 0.0.12, FramePerfWatcher in telescope 0.0.5, WindPerfCounters in wind 1.5.0. A caret resolves to the newest available, so a fresh resolution always picked the right siblings and CI stayed green. A consumer holding one back would have had pub call the graph satisfiable and the build then fail on undefined symbols, which is exactly what this branch's CI did while ^1.2.1 still resolved wind 1.4.1. Verified against the published graph with no local overrides: resolves magic 0.0.8, dusk 0.0.13, telescope 0.0.5, wind 1.5.0; analyze clean, format clean, 110 tests green. --- CHANGELOG.md | 21 +++++++++++++++++++++ pubspec.yaml | 10 +++++----- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 412c497..1a95aea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.0.4] - 2026-08-26 + ### Added - `MagicPerfIntegration`: the wiring that assembles the performance-diagnostic @@ -26,6 +28,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 a silently unregistered observer would produce a report with no route transitions and nothing to explain their absence. +### Changed + +- **The four sibling dependency floors now state what the code actually needs.** + They were `magic: ^0.0.6`, `fluttersdk_dusk: ^0.0.9`, + `fluttersdk_telescope: ^0.0.4` and `fluttersdk_wind: ^1.2.1`, and every one of + them was below the release that introduced an API `MagicPerfIntegration` calls: + `MagicController.onRefreshUI` arrived in magic 0.0.7, the four + `perf_readers.dart` pointers in dusk 0.0.12, `FramePerfWatcher` and + `TelescopeStore.recentFramePerf` / `clearFramePerf` in telescope 0.0.5, and + `WindPerfCounters` with `Wind.installPerfResolver()` in wind 1.5.0. + + A caret range resolves to the newest version available, so a fresh resolution + always picked up the right siblings and CI stayed green. A consumer whose own + constraints hold one of them back would not: pub would report the graph as + satisfiable and the build would then fail on undefined symbols. That is not + hypothetical, it is what this branch's own CI did while `^1.2.1` was still + resolving wind 1.4.1, with 18 errors all naming `WindPerfCounters` or + `installPerfResolver`. Now `^0.0.7`, `^0.0.12`, `^0.0.5` and `^1.5.0`. + ## [0.0.3] - 2026-08-05 Documentation only; no runtime change. The package code is identical to 0.0.2. diff --git a/pubspec.yaml b/pubspec.yaml index 0a973fa..c2aabee 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: magic_devtools description: "Magic adapters for the fluttersdk dev-tooling ecosystem: wires MagicDuskIntegration and MagicTelescopeIntegration into dusk and telescope." -version: 0.0.3 +version: 0.0.4 homepage: https://magic.fluttersdk.com repository: https://github.com/fluttersdk/magic_devtools issue_tracker: https://github.com/fluttersdk/magic_devtools/issues @@ -12,10 +12,10 @@ environment: dependencies: flutter: sdk: flutter - magic: ^0.0.6 - fluttersdk_dusk: ^0.0.9 - fluttersdk_telescope: ^0.0.4 - fluttersdk_wind: ^1.2.1 + magic: ^0.0.7 + fluttersdk_dusk: ^0.0.12 + fluttersdk_telescope: ^0.0.5 + fluttersdk_wind: ^1.5.0 dev_dependencies: flutter_test: From 8bcfa9bec1e415aaa0c8f79b2c14d4146a76db61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?An=C4=B1lcan=20=C3=87ak=C4=B1r?= Date: Wed, 26 Aug 2026 00:59:21 +0300 Subject: [PATCH 2/2] docs(readme): move the install snippet to the versions 0.0.4 ships against 0.0.3's changelog states the snippet pins the versions actually shipped, "so a copy-paste resolves to the combination this package is tested against". It had stopped doing that: magic_devtools ^0.0.2, dusk ^0.0.9, telescope ^0.0.4 against a release that ships 0.0.4, 0.0.13 and 0.0.5. Not a resolution failure, which is worth being precise about since the review that raised this read the constraints as `>=0.0.2 <0.0.3` and so on. A caret on a 0.0.x raises the MINOR for its upper bound, so `^0.0.2` is `>=0.0.2 <0.1.0` and admits 0.0.4; `^0.0.9` admits 0.0.13 and `^0.0.4` admits 0.0.5, none of them conflicting with the new floors. Checked with pub_semver rather than recalled. The snippet was stale against its own stated contract, which is reason enough. Changelog heading moved from 2026-08-26 to 2026-08-25, matching the five sibling releases tagged in this same batch and the UTC day the commits carry. --- CHANGELOG.md | 2 +- README.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a95aea..120c16e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [0.0.4] - 2026-08-26 +## [0.0.4] - 2026-08-25 ### Added diff --git a/README.md b/README.md index d6c3435..be4ec1b 100644 --- a/README.md +++ b/README.md @@ -42,9 +42,9 @@ Four import barrels: ```yaml dependencies: - magic_devtools: ^0.0.2 - fluttersdk_dusk: ^0.0.9 # add if you use dusk - fluttersdk_telescope: ^0.0.4 # add if you use telescope + magic_devtools: ^0.0.4 + fluttersdk_dusk: ^0.0.13 # add if you use dusk + fluttersdk_telescope: ^0.0.5 # add if you use telescope ``` `magic_devtools` depends on `magic`, `fluttersdk_dusk`, and `fluttersdk_telescope` directly, so transitive resolution does not happen through `magic` itself.