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

[FEATURE REQUEST] Prepare for upcoming breaking change in Flutter's build directory layout #205

Closed
loic-sharma opened this issue Jun 28, 2023 · 3 comments
Labels
enhancement New feature or request fixed bug fixed

Comments

@loic-sharma
Copy link

loic-sharma commented Jun 28, 2023

💬 Description

In a future release, Flutter Window's build directory layout will change. This will enable Windows Arm64 support. See: https://flutter.dev/go/windows-arm64

Current layout: ./build/windows/runner/<mode>/<app>.exe
New layout: ./build/windows/<architecture>/runner/<mode>/<app>.exe

Example using new layout: ./build/windows/x64/runner/Release/gallery.exe

This is a breaking change. For example:

String buildFilesFolder =
'${Directory.current.path}/build/windows/runner/Release';

If possible, package:msix should support both the "old" and "new" layout while the Flutter Windows community migrates to the new build layout. Please let me know if you have any questions about this change! /cc @pbo-linaro.

❓ Platform

Windows

@YehudaKremer
Copy link
Owner

Hello @loic-sharma

No problem, I will add support for this.

@YehudaKremer
Copy link
Owner

@loic-sharma Hello again

Msix package version 3.15.0 is now supporting the new and the old folder architecture-layout for Flutter windows build.

Thanks for letting me know about this change.

@YehudaKremer YehudaKremer added enhancement New feature or request fixed bug fixed labels Jun 29, 2023
@pbo-linaro
Copy link

pbo-linaro commented Jun 29, 2023

That was fast! Good work.
We'll keep you updated when the PR for build layout is about to be merged.

sfshaza2 pushed a commit to flutter/website that referenced this issue Sep 5, 2023
_Description of what this PR is changing or adding, and why:_
To support Windows Arm64, we updated the Windows's build directory to
include the target architecture. Previously, the Windows build assumed
an x64 build.

Example build path before:
`build/windows/runner/Release/hello_world.exe`
Example build path after:
`build/windows/x64/runner/Release/hello_world.exe`

Tooling that depends on this build path will need to be updated. For
example, `package:msix` takes your app's executable and bundles for the
Microsoft Store. It needed to be updated:
YehudaKremer/msix#205

_Issues fixed by this PR (if any):_
flutter/flutter#129804

/cc @pbo-linaro Who implemented this.

## Presubmit checklist

- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.
atsansone pushed a commit to atsansone/website that referenced this issue Sep 19, 2023
_Description of what this PR is changing or adding, and why:_
To support Windows Arm64, we updated the Windows's build directory to
include the target architecture. Previously, the Windows build assumed
an x64 build.

Example build path before:
`build/windows/runner/Release/hello_world.exe`
Example build path after:
`build/windows/x64/runner/Release/hello_world.exe`

Tooling that depends on this build path will need to be updated. For
example, `package:msix` takes your app's executable and bundles for the
Microsoft Store. It needed to be updated:
YehudaKremer/msix#205

_Issues fixed by this PR (if any):_
flutter/flutter#129804

/cc @pbo-linaro Who implemented this.

## Presubmit checklist

- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request fixed bug fixed
Projects
None yet
Development

No branches or pull requests

3 participants