-
Notifications
You must be signed in to change notification settings - Fork 269
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
Update release process to include building a Dafny that's usable on M* Macs. #2889
Comments
I would prefer an alternative that does not depend on AWS if possible? But I am not knowledgeable enough. |
I think there could be several options available at the same time, AWS being just one of them. For AWS, I think the step of how to get an AWS account might be left out of the release manual since this GitHub organisation doesn't have any AWS budget. It'll be up to individual contributors to for example use the AWS free tier or other resources to use AWS, or use an alternative to AWS such as a personal M1 mac. |
Option B sounds like a strict improvement over what we have now, right? (Since we require dotnet to build Dafny today on M*s.) That said, I didn't follow the M* issues very closely, but is there a dotnet bug that prevents us from cross-compiling for that platform? |
Just tried it and it seems to work, at least for building for arm64 on my x64 laptop, although I only tested the building not running it on an M*. This seems like the best approach then. |
Related PR that should make the vscode extension installation process more reliable on M* Macs: |
Fixes #2889 The packaging script is using Z3 version names to identify and publish Dafny Binaries for various OS and Architecture but as Z3 4.8.5 doesn’t have a version for osx-arm64 , here the changes are copying info from osx-64 and changing it to publish for M* macbooks. <small>By submitting this pull request, I confirm that my contribution is made under the terms of the [MIT license](https://github.com/dafny-lang/dafny/blob/master/LICENSE.txt).</small> Co-authored-by: Parva Shah <[email protected]> Co-authored-by: Robin Salkeld <[email protected]>
Many Dafny users have trouble installing Dafny on their Mac:
Instead of making it easier for these users to build Dafny from source on their M* Mac, which so far has been an error prone process, we should ensure new versions of Dafny include a M* Mac build.
Implementation A
Use dotnet cross-compilation to let our GitHub actions MacOS machine build for both x64 and arm64. This can be done using the
--arch
option ofdotnet
: https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-build#optionsImplementation B
Build a platform independent Dafny, which requires
dotnet
to be installed on the machine, and which does not include a Z3 binary. The Dafny VSCode extension will have to be updated so that it installsdotnet
and downloads Z3.Implementation C
Build a platform independent Dafny, which requires
dotnet
to be installed on the machine, and which includes the MacOS M* Z3 binary. The Dafny VSCode extension will have to be updated so that it installsdotnet
.The text was updated successfully, but these errors were encountered: