You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
function_always_returns_null no longer fires on @override declarations that return null. Overriding a nullable parent member (e.g. @override Color? get barrierColor => null; on a no-barrier ModalRoute) honors the parent's contract — the override cannot widen the return type, and returning anything other than null would lie about absence. The rule now skips any declaration carrying @override; if the parent's return type were non-nullable, the override would already be a compile error, so the annotation alone is a sufficient signal. No action required.
avoid_small_touch_targets no longer false-fires on wide-band overlays. A SizedBox or Container whose single small axis (e.g. height: 38) wrapped a GestureDetector, InkWell, or InkResponse — typically a dismiss-on-tap pill, list row, or Positioned.fill overlay — was incorrectly flagged as a small touch target even though the tap region spans the full parent width. The rule now distinguishes icon-sized targets (IconButton, Checkbox, Radio, Switch, TextButton, ElevatedButton, OutlinedButton) — where either axis under 44 px is a real concern — from region recognizers, which require both axes explicitly under 44 px to fire. Remove any project-local // ignore: avoid_small_touch_targets comments added to silence the false positive.
prefer_layout_builder_for_constraints no longer fires inside static utility methods that take a BuildContext. Static helpers like MenuUtils.popupMenuConstraints(BuildContext) compute absolute viewport-fraction dimensions for non-widget return types (BoxConstraints, Size, EdgeInsets); LayoutBuilder is structurally inapplicable to them because there is no parent constraint to consult and the return is data, not a widget. Instance methods that take BuildContext (the 2026-04-28 case) still fire. Remove any project-local // ignore: prefer_layout_builder_for_constraints comments added to silence the false positive on static utilities.
Maintenance
Python publish-tooling tests now find the repo root. The unittest suite was relocated to scripts/modules/tests/ in May without updating its parents[2] repo-root index, leaving CI's test job red against every release commit since (including Release v13.11.2). No user impact.
Removed post-publish auto-bump of pubspec.yaml. Releases no longer auto-commit chore: bump version to n.n.n+1. The next publish prompt now defaults to a patch bump only when CHANGELOG.md has an [Unreleased] section, so minor or major releases no longer have to undo a pre-committed patch decision and main no longer carries phantom version-bump commits for releases that never shipped. No user impact.
Stopped per-release churn of views.help.name across 25 locale bundles. The static value is now the localized word "Help" alone (no version suffix); the runtime createTreeView().title injection in extension/src/extension.ts continues to display the live (vX.Y.Z) from package.json, unchanged from the user's perspective. The pre-compile sync script that stamped the version on every locale was deleted, which also fixes a long-standing duplicate-version pattern that had crept into Arabic, Persian, and Polish bundles (the stripper only matched lowercase Latin v, leaving translated version parens intact across releases). No user impact.