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
The output directory structure of flutterpi_tool build keeps changing over time. Originally it was something like build/, then build/flutter-pi/aarch64-generic, then apparently back to build/, etc.
An extra file kernel_blob.bin sometimes shows up in the output, even when building in what I expect should be AOT / release modes.
These variations (dir structure + presence of kernel_blob.bin) break downstream scripts, automations, deployment paths.
What I expect:
A stable, documented output layout (with versioned or released version of the tool) so that user scripts don’t need to adjust weekly.
In --release or profile builds, no kernel_blob.bin should appear (because release/profile builds should use AOT/ELF snapshots, not JIT / kernel bytecode, right?).
Directory names / paths should either be configurable or at least have stable canonical names (arch, generic / cpu, etc.).
Steps to Reproduce / Observations
Using flutterpi_tool build --arch=<some arch> --release
Initially the output was under build/.
Later versions of flutterpi_tool put output under build/flutter-pi/aarch64-generic/ (or similar arch-named subdir).
Recently, the output moved back to just build/ or another layout.
Even in release mode, I sometimes see kernel_blob.bin under flutter_assets/.
Impact
My automation scripts assume some fixed path to pick up binaries/assets, and these keep breaking.
If kernel_blob.bin is included in release builds, then that suggests the build is not fully AOT, which may impact performance, binary size, startup, or be surprising for users expecting release-mode behavior.
There is no explicit note (so far as I saw) that kernel_blob.bin is removed in release builds, or that output directory layout is intended to be stable.
I also found that in Flutter itself, there is an issue “Failed to find snapshot: flutter_assets/kernel_blob.bin” when in release mode, meaning having kernel_blob.bin absent is expected in some configurations. (108803)
Description
What currently happens:
flutterpi_tool buildkeeps changing over time. Originally it was something likebuild/, thenbuild/flutter-pi/aarch64-generic, then apparently back tobuild/, etc.kernel_blob.binsometimes shows up in the output, even when building in what I expect should be AOT / release modes.kernel_blob.bin) break downstream scripts, automations, deployment paths.What I expect:
--releaseorprofilebuilds, nokernel_blob.binshould appear (because release/profile builds should use AOT/ELF snapshots, not JIT / kernel bytecode, right?).Steps to Reproduce / Observations
flutterpi_tool build --arch=<some arch> --releasebuild/.flutterpi_toolput output underbuild/flutter-pi/aarch64-generic/(or similar arch-named subdir).build/or another layout.kernel_blob.binunderflutter_assets/.Impact
kernel_blob.binis included in release builds, then that suggests the build is not fully AOT, which may impact performance, binary size, startup, or be surprising for users expecting release-mode behavior.What I Checked / Need Validation
flutterpi_toolchangelog on pub.dev and see many fixes & version bumps.kernel_blob.binis removed in release builds, or that output directory layout is intended to be stable.kernel_blob.binabsent is expected in some configurations. (108803)