Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distribute arm64 binaries for Apple Silicon Macs #38

Open
gaetschwartz opened this issue Aug 29, 2023 · 27 comments
Open

Distribute arm64 binaries for Apple Silicon Macs #38

gaetschwartz opened this issue Aug 29, 2023 · 27 comments
Labels
enhancement New feature or request

Comments

@gaetschwartz
Copy link

Fort now the installer only downloads and the CI only builds for x64 but Apple has been transitioning to arm64. I think it would be a good idea to also do.

@pingbird pingbird added the enhancement New feature or request label Sep 21, 2023
@pingbird
Copy link
Owner

pingbird commented Sep 21, 2023

EDIT: This issue has gotten a lot of attention so I would like to clear up some misconceptions.

  • Puro will download and install the correct version of flutter for your architecture, including apple silicon.
  • This issue is tracking is porting the puro binary itself to arm64, the puro binary doesn't do any heavy lifting so Rosetta should not have an impact on performance.
  • The CI/CD for macs is significantly (30x) more expensive than Linux, I am waiting for them to get cheaper OR for Dart to support cross-compilation.

@gaetschwartz
Copy link
Author

You should consider switching to Github Actions which is free for open-source projects like yours !

@pingbird
Copy link
Owner

pingbird commented Sep 25, 2023

GitHub Actions sucks, CircleCI gives me a ton of free credit but M1 macs cost an obscene amount of credit on both

@gaetschwartz
Copy link
Author

If you say so, after all it's your project, just bare in mind that every new Macbook uses and will use arm64 so x86_64 is basically obsolete.

@passsy
Copy link
Contributor

passsy commented Oct 4, 2023

This is critical. Because puro downloads the x86 binary, it runs flutter and my app in rosetta mode which causes subpar app performance.

I'm happy to help you with github actions 😃

@pingbird
Copy link
Owner

pingbird commented Oct 4, 2023

That's odd, puro should be installing the arm version of Flutter if you have an M1 mac.

You can double check by running file ~/.puro/envs/stable/flutter/bin/cache/dart-sdk/bin/dart and it should print something like Mach-O 64-bit executable arm64.

If it prints x86 then there is a bug in Puro and I would need to see logs of puro create foo --log-level=4, otherwise it would be a bug in the flutter tool or device_info_plus which I can possibly work around.

@pingbird
Copy link
Owner

pingbird commented Oct 4, 2023

This looks like an issue with the flutter tool, possibly running puro w/ rosetta is setting some environment variables that tricks the Flutter tool into thinking the target architecture is x64 😢

@pingbird
Copy link
Owner

pingbird commented Oct 4, 2023

I've pushed a fix in Puro 1.3.8, the flutter tool should now correctly detect arm64 and use the correct engine artifacts.

@passsy try again and let me know if that worked, thanks for bringing it to my attention!

@passsy
Copy link
Contributor

passsy commented Oct 4, 2023

Just tested it, it works 🚀

My Flutter macos app is now running as Apple binary, not in Rosetta mode anymore
Screen-Shot-2023-10-04-21-41-23 52

flutter doctor also reports arm64 correctly, immediately after upgrading puro

❯ puro flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel stable, 3.13.0, on macOS 14.0 23A344 darwin-arm64, locale en-DE)

❯ file /Users/pascalwelsch/.puro/bin/puro
/Users/pascalwelsch/.puro/bin/puro: Mach-O 64-bit executable x86_64

puro binary is still x86_64 (which is not a big deal in my opinion). Therefore this issue is not solved

Sorry @gaetschwartz for highjacking this issue for another problem

@marcuspmd
Copy link

marcuspmd commented Oct 4, 2023

I'm with bad cpu in executable in version 1.3.8

I'm using a M2

@pingbird
Copy link
Owner

pingbird commented Oct 4, 2023

@scorpionslh could you provide logs with --log-level=4? Do you have Rosetta 2 installed?

@marcuspmd
Copy link

i solved installing rosetta, thanks for all

@gaetschwartz
Copy link
Author

Well if the engine downloaded is now the right one (arm64), the fact purpose is in x64 isn't that much an issue, feel free to close the issue 😊

@passsy
Copy link
Contributor

passsy commented Oct 5, 2023

I'm with bad cpu in executable in version 1.3.8

I'm using a M2

Maybe this issue should be kept open. Every dev on Apple Silicon has to install rosetta to be able to use puro.

It's solvable with the installer, but unnecessary.

What about developers on arm64 systems other than apple? I bet devs on a raspberry pi would love to use puro

@pingbird
Copy link
Owner

pingbird commented Oct 7, 2023

I will add arm64 Linux binaries when Flutter starts supporting arm64 Linux :)

You also need Rosetta for some build tools, cocoapods if I recall correctly

@ryanaidilp
Copy link

Got the same error when installing the old version of Flutter. I have rosetta installed on my mac, but I can't even run my flutter code that use v2.10.5.

  • result of file ~/.puro/envs/stable/flutter/bin/cache/dart-sdk/bin/dart command
image
  • result of file ~/.puro/envs/v2_10_5/flutter/bin/cache/dart-sdk/bin/dart
image

Here is the output of my puro ls command, I notice there is something weird in the 2.10.5 environment
image

And here is the result of puro create v2_10_5 --log-level=4

Details


[D] [git 67037] finished with exit code 0 in 1820ms
[D] [git 67047] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git reset
[D] [git 67047] finished with exit code 0 in 11ms
[D] [git 67048] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git rev-parse --abbrev-ref HEAD
[D] git: fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree.
[D] git: Use '--' to separate paths from revisions, like this:
[D] git: 'git  [...] -- [...]'
[D] git: HEAD
[D] [git 67048] finished with exit code 128 in 8ms
[V] git failed with exit code 128
[D] [git 67049] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git show-ref refs/heads/stable
[D] [git 67049] finished with exit code 1 in 26ms
[V] git failed with exit code 1
[D] uninstallEnvShims
[D] [git 67050] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git rev-parse HEAD
[D] git: fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree.
[D] git: Use '--' to separate paths from revisions, like this:
[D] git: 'git  [...] -- [...]'
[D] git: HEAD
[D] [git 67050] finished with exit code 128 in 8ms
[V] git failed with exit code 128
[D] [git 67051] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git checkout -b stable 5464c5bac742001448fe4fc0597be939379f88ea
[D] git: Switched to a new branch 'stable'
[D] [git 67051] finished with exit code 0 in 878ms
[D] installEnvShims
[V] Updating config at /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/.git/info/exclude
[V] Added "bin/cache"
[V] Added "bin/dart"
[V] Added "bin/dart.bat"
[V] Added "bin/flutter"
[V] Added "bin/flutter.bat"
[V] Added "bin/dart.bak"
[V] Added "bin/dart.bat.bak"
[V] Added "bin/flutter.bak"
[V] Added "bin/flutter.bat.bak"
[V] Added "bin/internal/shared.bat"
[V] Added "bin/internal/shared.sh"
[V] Added "bin/internal/update_dart_sdk.ps1"
[V] Added "bin/internal/update_dart_sdk.sh"
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter took 0ms
[D] > chmod +x /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter
[D] chmod finished in 13ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat took 0ms
[D] [git 67053] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/dart
[D] [git 67053] finished with exit code 0 in 10ms
[D] [git 67054] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/dart.bat
[D] [git 67054] finished with exit code 0 in 9ms
[D] [git 67055] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/flutter
[D] [git 67055] finished with exit code 0 in 10ms
[D] [git 67056] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/flutter.bat
[D] [git 67056] finished with exit code 0 in 10ms
[D] [git 67057] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/shared.bat
[D] [git 67057] finished with exit code 0 in 9ms
[D] [git 67058] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/shared.sh
[D] [git 67058] finished with exit code 0 in 9ms
[D] [git 67059] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/update_dart_sdk.ps1
[D] [git 67059] finished with exit code 0 in 9ms
[D] [git 67060] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/update_dart_sdk.sh
[D] [git 67060] finished with exit code 0 in 9ms
[D] assumeUnchanged: [bin/dart, bin/dart.bat, bin/flutter, bin/flutter.bat, bin/internal/shared.bat, bin/internal/shared.sh, bin/internal/update_dart_sdk.ps1, bin/internal/update_dart_sdk.sh]
[D] [git 67061] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git update-index --assume-unchanged -- bin/dart bin/dart.bat bin/flutter bin/flutter.bat bin/internal/shared.bat bin/internal/shared.sh bin/internal/update_dart_sdk.ps1 bin/internal/update_dart_sdk.sh
[D] [git 67061] finished with exit code 0 in 348ms
[V] Updating config at /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/.git/info/attributes
[V] Added "bin/dart merge=ours"
[V] Added "bin/dart.bat merge=ours"
[V] Added "bin/flutter merge=ours"
[V] Added "bin/flutter.bat merge=ours"
[V] Added "bin/internal/shared.bat merge=ours"
[V] Added "bin/internal/shared.sh merge=ours"
[V] Added "bin/internal/update_dart_sdk.ps1 merge=ours"
[V] Added "bin/internal/update_dart_sdk.sh merge=ours"
[D] [git 67062] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git config merge.ours.driver true
[D] [git 67062] finished with exit code 0 in 10ms
[D] [git 67063] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git branch -u origin/stable stable
[D] git: branch 'stable' set up to track 'origin/stable'.
[D] [git 67063] finished with exit code 0 in 9ms
[V] Checking out stable / 2.10.5 / 5464c5bac7 took 3268ms
[D] installEnvShims
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter took 0ms
[D] > chmod +x /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter
[D] chmod finished in 10ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/dart.bat took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/flutter.bat took 0ms
[D] [git 67065] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/dart
[D] [git 67065] finished with exit code 0 in 10ms
[D] [git 67066] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/dart.bat
[D] [git 67066] finished with exit code 0 in 10ms
[D] [git 67067] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/flutter
[D] [git 67067] finished with exit code 0 in 9ms
[D] [git 67068] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/flutter.bat
[D] [git 67068] finished with exit code 0 in 9ms
[D] [git 67069] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/shared.bat
[D] [git 67069] finished with exit code 0 in 9ms
[D] [git 67070] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/shared.sh
[D] [git 67070] finished with exit code 0 in 10ms
[D] [git 67071] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/update_dart_sdk.ps1
[D] [git 67071] finished with exit code 0 in 9ms
[D] [git 67072] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git cat-file -e HEAD:bin/internal/update_dart_sdk.sh
[D] [git 67072] finished with exit code 0 in 9ms
[D] assumeUnchanged: [bin/dart, bin/dart.bat, bin/flutter, bin/flutter.bat, bin/internal/shared.bat, bin/internal/shared.sh, bin/internal/update_dart_sdk.ps1, bin/internal/update_dart_sdk.sh]
[D] [git 67073] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git update-index --assume-unchanged -- bin/dart bin/dart.bat bin/flutter bin/flutter.bat bin/internal/shared.bat bin/internal/shared.sh bin/internal/update_dart_sdk.ps1 bin/internal/update_dart_sdk.sh
[D] [git 67073] finished with exit code 0 in 11ms
[D] [git 67074] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git config merge.ours.driver true
[D] [git 67074] finished with exit code 0 in 8ms
[V] Downloading engine took 109634ms
[V] Unzipping into LocalDirectory: '/Users/ryanaidilp/.puro/shared/caches'
[V] Started unzipping engine
[D] > unzip -o -q /Users/ryanaidilp/.puro/shared/caches/57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab.zip -d /Users/ryanaidilp/.puro/shared/caches/57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab
[D] unzip finished in 4542ms
[V] Unzipping engine took 4545ms
[V] Collecting garbage...
[D] [git 67160] /Users/ryanaidilp/.puro/envs/stable/flutter> git rev-parse HEAD
[D] git: db7ef5bf9f59442b0e200a90587e8fa5e0c6336a
[D] [git 67160] finished with exit code 0 in 16ms
[D] [git 67161] /Users/ryanaidilp/.puro/envs/v3_10_6/flutter> git rev-parse HEAD
[D] git: f468f3366c26a5092eb964a230ce7892fda8f2f8
[D] [git 67161] finished with exit code 0 in 10ms
[D] [git 67162] /Users/ryanaidilp/.puro/envs/v3_13_7/flutter> git rev-parse HEAD
[D] git: 2f708eb8396e362e280fac22cf171c2cb467343c
[D] [git 67162] finished with exit code 0 in 8ms
[D] [git 67163] /Users/ryanaidilp/.puro/envs/v3_13_9/flutter> git rev-parse HEAD
[D] git: d211f42860350d914a5ad8102f9ec32764dc6d06
[D] [git 67163] finished with exit code 0 in 8ms
[D] [git 67164] /Users/ryanaidilp/.puro/envs/stable/flutter> git rev-parse HEAD
[D] git: db7ef5bf9f59442b0e200a90587e8fa5e0c6336a
[D] [git 67164] finished with exit code 0 in 8ms
[D] [git 67165] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git rev-parse HEAD
[D] git: 5464c5bac742001448fe4fc0597be939379f88ea
[D] [git 67165] finished with exit code 0 in 9ms
[V] Saved 3404ms by pre-caching engine
[D] flutterCache.engineVersion: null
[D] flutterConfig.engineVersion: 57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock took 0ms
[V] Engine out of date
[V] Started checking if dart works
[D] > /Users/ryanaidilp/.puro/shared/caches/57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab/dart-sdk/bin/dart --version
[D] dart finished in 1295ms
[D] dart: Dart SDK version: 2.16.2 (stable) (Tue Mar 22 13:15:13 2022 +0100) on "macos_x64"

[V] Checking if dart works took 1295ms
[V] Syncing flutter cache...
[D] Creating symlink for engine-dart-sdk.stamp
[D] Creating symlink for dart-sdk
[D] [git 67173] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git rev-parse HEAD
[D] git: 5464c5bac742001448fe4fc0597be939379f88ea
[D] [git 67173] finished with exit code 0 in 9ms
[D] flutterCommit: 5464c5bac742001448fe4fc0597be939379f88ea
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/prefs.json
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/prefs.json took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock took 0ms
[V] Started waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock
[V] Waiting for lock on /Users/ryanaidilp/.puro/envs/v2_10_5/update.lock took 0ms
[V] Flutter tool out of date
[D] [git 67174] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter> git show HEAD:bin/internal/shared.sh
[D] [git 67174] finished with exit code 0 in 16ms
[V] Started updating flutter tool
[D] /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/packages/flutter_tools> /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/cache/dart-sdk/bin/pub upgrade --no-precompile
[D] pub finished in 4551ms
[D] pub: Resolving dependencies...
+ _fe_analyzer_shared 31.0.0 (65.0.0 available)
+ analyzer 2.8.0 (6.3.0 available)
+ archive 3.1.6 (3.4.9 available)
+ args 2.3.0 (2.4.2 available)
+ async 2.8.2 (2.11.0 available)
+ boolean_selector 2.1.0 (2.1.1 available)
+ browser_launcher 1.0.0 (1.1.1 available)
+ built_collection 5.1.1
+ built_value 8.1.3 (8.7.0 available)
+ charcode 1.3.1
+ checked_yaml 2.0.1 (2.0.3 available)
+ cli_util 0.3.5 (0.4.0 available)
+ clock 1.1.0 (1.1.1 available)
+ collection 1.15.0 (1.18.0 available)
+ completion 1.0.0 (1.0.1 available)
+ convert 3.0.1 (3.1.1 available)
+ coverage 1.0.3 (1.7.1 available)
+ crypto 3.0.1 (3.0.3 available)
+ csslib 0.17.1 (1.0.0 available)
+ dds 2.1.4 (3.1.0 available)
+ devtools_shared 2.8.0 (6.0.1 available)
+ dwds 11.5.2 (22.1.0 available)
+ fake_async 1.2.0 (1.3.1 available)
+ file 6.1.2 (7.0.0 available)
+ file_testing 3.0.0
+ fixnum 1.0.0 (1.1.0 available)
+ flutter_template_images 4.0.0 (4.2.1 available)
+ frontend_server_client 2.1.2 (3.2.0 available)
+ glob 2.0.2 (2.1.2 available)
+ html 0.15.0 (0.15.4 available)
+ http 0.13.4 (1.1.1 available)
+ http_multi_server 3.0.1 (3.2.1 available)
+ http_parser 4.0.0 (4.0.2 available)
+ intl 0.17.0 (0.18.1 available)
+ io 1.0.3 (1.0.4 available)
+ js 0.6.3 (0.6.7 available)
+ json_annotation 4.4.0 (4.8.1 available)
+ json_rpc_2 3.0.1 (3.0.2 available)
+ logging 1.0.2 (1.2.0 available)
+ matcher 0.12.11 (0.12.16 available)
+ meta 1.7.0 (1.11.0 available)
+ mime 1.0.1 (1.0.4 available)
+ multicast_dns 0.3.1 (0.3.2+5 available)
+ mustache_template 2.0.0
+ native_stack_traces 0.4.3 (0.5.6 available)
+ node_preamble 2.0.1 (2.0.2 available)
+ package_config 2.0.2 (2.1.0 available)
+ path 1.8.0 (1.8.3 available)
+ pedantic 1.11.1 (discontinued replaced by lints)
+ petitparser 4.4.0 (6.0.1 available)
+ platform 3.1.0 (3.1.3 available)
+ pool 1.5.0 (1.5.1 available)
+ process 4.2.4 (5.0.1 available)
+ pub_semver 2.1.0 (2.1.4 available)
+ pubspec_parse 1.2.0 (1.2.3 available)
+ shelf 1.1.4 (1.4.1 available)
+ shelf_packages_handler 3.0.0 (3.0.2 available)
+ shelf_proxy 1.0.1 (1.0.4 available)
+ shelf_static 1.1.0 (1.1.2 available)
+ shelf_web_socket 1.0.1 (1.0.4 available)
+ source_map_stack_trace 2.1.0 (2.1.1 available)
+ source_maps 0.10.10 (0.10.12 available)
+ source_span 1.8.1 (1.10.0 available)
+ sse 4.1.0 (4.1.4 available)
+ stack_trace 1.10.0 (1.11.1 available)
+ stream_channel 2.1.0 (2.1.2 available)
+ string_scanner 1.1.0 (1.2.0 available)
+ sync_http 0.3.0 (0.3.1 available)
+ term_glyph 1.2.0 (1.2.1 available)
+ test 1.19.5 (1.24.9 available)
+ test_api 0.4.8 (0.6.1 available)
+ test_core 0.4.9 (0.5.9 available)
+ typed_data 1.3.0 (1.3.2 available)
+ usage 4.0.2 (4.1.1 available)
+ uuid 3.0.5 (4.2.1 available)
+ vm_service 7.5.0 (13.0.0 available)
+ vm_snapshot_analysis 0.7.0 (0.7.6 available)
+ watcher 1.0.1 (1.1.0 available)
+ web_socket_channel 2.1.0 (2.4.0 available)
+ webdriver 3.0.0 (3.0.3 available)
+ webkit_inspection_protocol 1.0.0 (1.2.1 available)
+ xml 5.3.1 (6.4.2 available)
+ yaml 3.1.0 (3.1.2 available)
Changed 83 dependencies!
1 package is discontinued.
78 packages have newer versions incompatible with dependency constraints.
Try dart pub outdated for more information.

[V] Updating flutter tool took 4553ms
[V] Started compiling flutter tool
[D] > /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev --packages=/Users/ryanaidilp/.puro/envs/v2_10_5/flutter/packages/flutter_tools/.dart_tool/package_config.json --snapshot=/Users/ryanaidilp/.puro/shared/flutter_tools/5464c5bac742001448fe4fc0597be939379f88ea/flutter_tools.snapshot.tmp --no-enable-mirrors /Users/ryanaidilp/.puro/envs/v2_10_5/flutter/packages/flutter_tools/bin/flutter_tools.dart
[D] dart finished in 13984ms
[D] dart: Info: Compiling without sound null safety

[V] Compiling flutter tool took 13985ms

@pingbird
Copy link
Owner

@ryanaidilp What is the exact error you get? I believe flutter's support for arm64 wasn't added until version 3.0.0

@ryanaidilp
Copy link

@ryanaidilp What is the exact error you get? I believe flutter's support for arm64 wasn't added until version 3.0.0

That's the problem. I have no issue previously when using version 2.10.5 on my mac. But after upgrade my puro and flutter stable environment, when I go back to my old project using 2.10.5 it always said that Failed to initialize flutter and give me this message on my terminal. I tried to wipe the environment using puro rm command, clean the cache puro gc and then recreate it and it still gave me the same error.

image

@pingbird
Copy link
Owner

Ahh, that's definitely a bug, it's running /usr/bin/arch on a non-arm executable

@ryanaidilp
Copy link

Ahh, that's definitely a bug, it's running /usr/bin/arch on a non-arm executable

any solution on this issue?

@pingbird
Copy link
Owner

@ryanaidilp could you do puro upgrade-puro master and show the result of puro --log-level=4 flutter version

@ryanaidilp
Copy link

ryanaidilp commented Nov 29, 2023

@ryanaidilp could you do puro upgrade-puro master and show the result of puro --log-level=4 flutter version

After updating Puro from the master branch, it's oddly working now. I didn't even need to execute any commands; just running puro ls showed it can detect the v2.10.5 version on my machine.

Before:
puro before

After:
image

@pingbird
Copy link
Owner

Nice! I'll push a release then.

@RandalSchwartz
Copy link

Have you pushed the release yet? I cannot install 2.10.5 on my m1 mac now.

@pingbird
Copy link
Owner

pingbird commented Jan 6, 2024

What version of Puro are you using?

@RandalSchwartz
Copy link

It was old. Upgraded, now fixed. Ship it!

@justincbeck
Copy link

Is this resolved in the current version?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

7 participants