tag:github.com,2008:https://github.com/flutter/packages/releasesRelease notes from packages2026-03-19T15:06:43Ztag:github.com,2008:Repository/99045602/camera-v0.12.0+12026-03-19T15:06:43Zcamera-v0.12.0+1: [camera] Make Optional.of constructor const (#11247)<p>Resolves old TODO from 2023 ( <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/flutter/packages/commit/6e09f5b0d26f77bf70ab27d6ab4c7f8b46968c34/hovercard" href="https://github.com/flutter/packages/commit/6e09f5b0d26f77bf70ab27d6ab4c7f8b46968c34"><tt>6e09f5b</tt></a> committed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/camsim99/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/camsim99">@camsim99</a> ) by making the <code>Optional.of</code> constructor <code>const</code> and removing the obsolete runtime <code>ArgumentError.checkNotNull</code> guard that was only needed during Dart 2's mixed-mode (unsound null safety) era. Mixed-mode execution was removed in Dart 3.0, so this is dead code. Not a breaking change.</p>
<p>Note that the entire <code>Optional<T></code> class (and surrounding <code>CameraController</code>) is copy-pasted across 4 files in the camera packages. Would you prefer to move <code>Optional<T></code> into <code>camera_platform_interface</code> to share it, or replace it entirely e.g. with a private sentinel pattern in <code>copyWith</code> (as the Flutter framework does for <code>ThemeData</code>)?</p>
<h2>Pre-Review Checklist</h2>cdeiltag:github.com,2008:Repository/99045602/webview_flutter_wkwebview-v3.24.12026-03-18T18:26:17Zwebview_flutter_wkwebview-v3.24.1<p>[webview_flutter_wkwebview] Updates platform views on iOS to only hav…</p>bparrishMinestag:github.com,2008:Repository/99045602/local_auth_android-v2.0.72026-03-18T20:24:23Zlocal_auth_android-v2.0.7<p>[local_auth] Convert to Kotlin gradle for the plugin build files (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="389511381" data-permission-text="Title is private" data-url="https://github.com/flutter/packages/issues/11" data-hovercard-type="pull_request" data-hovercard-url="/flutter/packages/pull/11/hovercard" href="https://github.com/flutter/packages/pull/11">#11</a>…</p>stuartmorgan-gtag:github.com,2008:Repository/99045602/local_auth_android-v2.0.62026-03-18T18:24:37Zlocal_auth_android-v2.0.6<p>[dependabot]: Bump androidx.core:core from 1.17.0 to 1.18.0 in /packa…</p>dependabot[bot]tag:github.com,2008:Repository/99045602/interactive_media_ads-v0.3.0+122026-03-18T18:16:39Zinteractive_media_ads-v0.3.0+12<p>[dependabot]: Bump androidx.core:core-ktx from 1.13.0 to 1.18.0 in /p…</p>dependabot[bot]tag:github.com,2008:Repository/99045602/google_maps_flutter-v2.16.02026-03-18T19:08:08Zgoogle_maps_flutter-v2.16.0<p>[google_maps_flutter] Add color scheme support to app-facing package …</p>stuartmorgan-gtag:github.com,2008:Repository/99045602/google_maps_flutter_web-v0.6.22026-03-18T15:47:12Zgoogle_maps_flutter_web-v0.6.2<p>[google_maps_flutter] Add color scheme support to web implementation …</p>stuartmorgan-gtag:github.com,2008:Repository/99045602/google_maps_flutter_platform_interface-v2.15.02026-03-18T13:55:36Zgoogle_maps_flutter_platform_interface-v2.15.0<p>[google_maps_flutter] Add color scheme support to platform interface …</p>stuartmorgan-gtag:github.com,2008:Repository/99045602/google_maps_flutter_android-v2.19.32026-03-18T15:35:04Zgoogle_maps_flutter_android-v2.19.3: [google_maps_flutter_android] Batch clustered marker operations (#10940)<p>Note: this PR attempts to use the same strategy from the Google Maps Flutter Web PR <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3695468617" data-permission-text="Title is private" data-url="https://github.com/flutter/packages/issues/10562" data-hovercard-type="pull_request" data-hovercard-url="/flutter/packages/pull/10562/hovercard" href="https://github.com/flutter/packages/pull/10562">#10562</a> and apply it to Google Maps Flutter Android.</p>
<h2>Summary</h2>
<ul>
<li>Adds batch <code>addItems()</code> and <code>removeItems()</code> methods to <code>ClusterManagersController</code></li>
<li>Refactors <code>MarkersController</code> to batch add/remove/change operations for clustered markers</li>
<li>Reduces redundant re-clustering calls when multiple markers are added/removed/changed at once</li>
</ul>
<p>This improves performance when working with large numbers of clustered markers by calling <code>ClusterManager.cluster()</code> once per cluster manager instead of once per marker.</p>
<h2>Test plan</h2>
<ul>
<li>Added unit tests for batch add/remove operations</li>
<li>Added unit test for batch cluster manager changes</li>
<li>Existing tests pass</li>
</ul>
<p>Addresses <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3142492178" data-permission-text="Title is private" data-url="https://github.com/flutter/flutter/issues/170573" data-hovercard-type="issue" data-hovercard-url="/flutter/flutter/issues/170573/hovercard" href="https://github.com/flutter/flutter/issues/170573">flutter/flutter#170573</a></p>
<h2>Pre-Review Checklist</h2>
<p><strong>Note</strong>: The Flutter team is currently trialing the use of <a href="https://developers.google.com/gemini-code-assist/docs/review-github-code" rel="nofollow">Gemini Code Assist for GitHub</a>. Comments from the <code>gemini-code-assist</code> bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.</p>
<p>🤖 Generated with <a href="https://claude.com/claude-code" rel="nofollow">Claude Code</a></p>elitreetag:github.com,2008:Repository/99045602/web_benchmarks-v4.1.12026-03-17T18:15:12Zweb_benchmarks-v4.1.1: [web_benchmark] Fix tab connection for newer versions of Chrome (#11266)<p>DevTools has been experiencing a <a href="https://github.com/flutter/flutter/issues/183335" data-hovercard-type="issue" data-hovercard-url="/flutter/flutter/issues/183335/hovercard">flake</a> with <code>package:web_benchmark</code>'s launching of Chrome. I've also noticed several times a similar failure when running web engines locally.</p>
<p>Turns out (from trial and error) that newer versions of Chrome seem to establish the WIP connection before tabs have had a chance to open. It's a race between the two, and when the WIP connections is faster, we fail to find any tab to connect to, and therefore we fail. The fix in this PR is to allow a grace period of 5 seconds of retrying to find the tab.</p>
<p>I made a <a href="https://github.com/flutter/flutter/pull/183737" data-hovercard-type="pull_request" data-hovercard-url="/flutter/flutter/pull/183737/hovercard">similar fix</a> in the flutter/flutter repo.</p>mdebbar