Sitelet https://github.com/flutter/packages/pull/12698
Skip to content

[camera_android_camerax] Bump cameraxVersion to 1.6.2, remove concurrent-futures workaround - #12698

Merged
auto-submit[bot] merged 16 commits into
flutter:mainfrom
dhc-tech:bump-camerax-1.6.2-remove-workaround
Sep 9, 2026
Merged

auto-submit[bot] merged 16 commits into
flutter:mainfrom
dhc-tech:bump-camerax-1.6.2-remove-workaround

Conversation

@dhc-tech

Copy link
Copy Markdown
Contributor

Bumps cameraxVersion from 1.6.1 to 1.6.2. This release includes an upstream
fix (https://issuetracker.google.com/issues/543937345) removing the JSpecify
type-use annotation that required consumers to explicitly declare
androidx.concurrent:concurrent-futures on their compile classpath. With
1.6.2, that workaround (added in #12373) is no longer needed, so this PR
removes the explicit dependency and its regression test.

Verified the fix is actually present in the published 1.6.2 artifact by
decompiling SurfaceRequest.class from camera-core-1.6.2.aar — the
mSurfaceRecreationCompleter field no longer carries the JSpecify
@NonNull type annotation that caused the original compile failure.

Fixes flutter/flutter#190505

Pre-Review Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene page, which explains my responsibilities.
  • I read and followed the relevant style guides and ran the auto-formatter.
  • I signed the CLA.
  • The title of the PR starts with the name of the package surrounded by square brackets.
  • I linked to at least one issue that this PR fixes in the description above.
  • I followed the version and CHANGELOG instructions, using semantic versioning and the repository CHANGELOG style (bumped to 0.7.4+8).
  • I updated/added any relevant documentation (doc comments with ///). N/A — no public API surface changed, only a build-file dependency version bump.
  • I added new tests to check the change I am making, or I have commented below to indicate which test exemption this PR falls under. This PR removes a dependency and its guard test rather than adding new behavior — the removed test (ConcurrentFuturesDependencyTest) existed solely to guard the now-unnecessary workaround dependency from [camera_android_camerax] Add explicit concurrent-futures dependency #12373, so deleting it alongside the dependency is correct rather than requiring a replacement test.
  • All existing and new tests are passing.

@google-cla

google-cla Bot commented Aug 31, 2026

Copy link
Copy Markdown

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the cameraxVersion from 1.6.1 to 1.6.2 in build.gradle.kts and removes the explicit androidx.concurrent:concurrent-futures dependency workaround along with its associated regression test, ConcurrentFuturesDependencyTest.java. The package version is bumped to 0.7.4+8 in pubspec.yaml and documented in CHANGELOG.md. There are no review comments, and I have no feedback to provide.

camera-core 1.6.2 includes an upstream fix removing the JSpecify
type-use annotation that required consumers to explicitly declare
androidx.concurrent:concurrent-futures on their compile classpath
(https://issuetracker.google.com/issues/543937345). With 1.6.2, that
workaround (added previously) is no longer needed, so this removes
the explicit dependency and its regression test.
@dhc-tech
dhc-tech force-pushed the bump-camerax-1.6.2-remove-workaround branch from c77b740 to da512c3 Compare August 31, 2026 04:39
@stuartmorgan-g stuartmorgan-g added the triage-android Should be looked at in Android triage label Sep 1, 2026
@jesswrd jesswrd added the CICD Run CI/CD label Sep 1, 2026
@flutter-dashboard flutter-dashboard Bot removed the CICD Run CI/CD label Sep 2, 2026

@camsim99 camsim99 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! and thank you so much for actually verify the fix is in 1.6.2!

Comment thread packages/camera/camera_android_camerax/CHANGELOG.md Outdated
@camsim99 camsim99 added the CICD Run CI/CD label Sep 2, 2026
@camsim99
camsim99 requested review from a team and reidbaker and removed request for a team September 2, 2026 17:22
@flutter-dashboard flutter-dashboard Bot removed the CICD Run CI/CD label Sep 2, 2026

@gmackall gmackall left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm but we should remove the integration test note from the changelog as it is intended to be user facing documentation (and so not contain test details)

Comment thread packages/camera/camera_android_camerax/CHANGELOG.md
@gmackall gmackall added the CICD Run CI/CD label Sep 9, 2026
Co-authored-by: Gray Mackall <34871572+gmackall@users.noreply.github.com>
@flutter-dashboard flutter-dashboard Bot removed the CICD Run CI/CD label Sep 9, 2026
@gmackall gmackall added the CICD Run CI/CD label Sep 9, 2026
@gmackall

gmackall commented Sep 9, 2026

Copy link
Copy Markdown
Member

Thanks for your work on both the workaround and the upstream fix inclusion!

@gmackall gmackall added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 9, 2026
@auto-submit
auto-submit Bot merged commit 31c7afb into flutter:main Sep 9, 2026
14 checks passed
victorsanni pushed a commit to victorsanni/packages that referenced this pull request Sep 9, 2026
…ent-futures workaround (flutter#12698)

Bumps `cameraxVersion` from 1.6.1 to 1.6.2. This release includes an upstream
fix (https://issuetracker.google.com/issues/543937345) removing the JSpecify
type-use annotation that required consumers to explicitly declare
`androidx.concurrent:concurrent-futures` on their compile classpath. With
1.6.2, that workaround (added in flutter#12373) is no longer needed, so this PR
removes the explicit dependency and its regression test.

Verified the fix is actually present in the published 1.6.2 artifact by
decompiling `SurfaceRequest.class` from `camera-core-1.6.2.aar` — the
`mSurfaceRecreationCompleter` field no longer carries the JSpecify
`@NonNull` type annotation that caused the original compile failure.

Fixes flutter/flutter#190505

## Pre-Review Checklist
@dhc-tech

Copy link
Copy Markdown
Contributor Author

Heads up: the release workflow run for this merge commit got cancelled — https://github.com/flutter/packages/actions/runs/34403230241/job/102639930809

It hit the 6-hour timeout while waiting on a handful of checks that appear to have gotten stuck in "queued" and never actually started:

  • Linux_android android_device_tests_shard_3 master
  • Mac_arm64 ios_platform_tests_shard_3 stable
  • Linux_web web_build_all_packages stable
  • Linux_desktop build_all_packages master
  • Linux_web web_platform_tests_wasm_shard_2 master
  • Linux_android_legacy android_platform_tests_legacy_api_shard_4 master

Every other commit's release run right before and after this one succeeded normally, so this looks like an isolated infra hiccup rather than a persistent tree issue. Since release runs are scoped to their own triggering commit, 0.7.4+8 doesn't seem to have been published — pub.dev still shows 0.7.4+7 as latest. Could someone with access re-run that job when convenient?

@gmackall

Copy link
Copy Markdown
Member

Heads up: the release workflow run for this merge commit got cancelled — https://github.com/flutter/packages/actions/runs/34403230241/job/102639930809

It hit the 6-hour timeout while waiting on a handful of checks that appear to have gotten stuck in "queued" and never actually started:

  • Linux_android android_device_tests_shard_3 master
  • Mac_arm64 ios_platform_tests_shard_3 stable
  • Linux_web web_build_all_packages stable
  • Linux_desktop build_all_packages master
  • Linux_web web_platform_tests_wasm_shard_2 master
  • Linux_android_legacy android_platform_tests_legacy_api_shard_4 master

Every other commit's release run right before and after this one succeeded normally, so this looks like an isolated infra hiccup rather than a persistent tree issue. Since release runs are scoped to their own triggering commit, 0.7.4+8 doesn't seem to have been published — pub.dev still shows 0.7.4+7 as latest. Could someone with access re-run that job when convenient?

0.7.4+8 has been published now, thanks for the heads up

mboetger pushed a commit to mboetger/flutter that referenced this pull request Sep 10, 2026
…er#192550)

flutter/packages@36e088a...8a35b16

2026-09-10 36861262+QuncCccccc@users.noreply.github.com [material_ui]
Migrate M3 buttons template to use new gen_defaults
(flutter/packages#12744)
2026-09-09 victorsanniay@gmail.com [cupertino_ui]Add awaitNotRequired to
Future-returning callsites without await (flutter/packages#12817)
2026-09-09 victorsanniay@gmail.com [material_ui] Add awaitNotRequired
annotation to material_ui (flutter/packages#12622)
2026-09-09 victor.orozco@cloudsufi.com [image_picker] Add native tests
for photo-library access and UIImagePicker completion
(flutter/packages#12540)
2026-09-09 hashemp206@yahoo.com [material_ui][cupertino_ui] allow page
routes to opt out of route semantics - flutter#182556 (flutter/packages#12674)
2026-09-09 victor.orozco@cloudsufi.com [image_picker] Add native tests
for pick results, camera access, and presentation
(flutter/packages#12539)
2026-09-09 laishereu@gmail.com [cupertino_ui] Fix platform view sheet
transitions (flutter/packages#12565)
2026-09-09 150371713+dhc-tech@users.noreply.github.com
[camera_android_camerax] Bump cameraxVersion to 1.6.2, remove
concurrent-futures workaround (flutter/packages#12698)
2026-09-09 116356835+AbdeMohlbi@users.noreply.github.com `[material_ui]`
replace identical checks with equality when dealing with enums
(flutter/packages#12633)
2026-09-09 engine-flutter-autoroll@skia.org Roll Flutter from
b444e78 to 63b9518 (21 revisions) (flutter/packages#12814)
2026-09-09 116356835+AbdeMohlbi@users.noreply.github.com
`[cupertino_ui]` replace identical checks with equality when dealing
with enums (flutter/packages#12632)
2026-09-09 tarrinneal@gmail.com [pigeon] add support for multiple swift
outputs (flutter/packages#12720)

If this roll has caused a breakage, revert this CL and set the roller
to dry run mode using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App CICD Run CI/CD p: camera platform-android triage-android Should be looked at in Android triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[camera_android_camerax] Build failure: class file for androidx.concurrent.futures.CallbackToFutureAdapter not found during Java compilation

5 participants