realm-js icon indicating copy to clipboard operation
realm-js copied to clipboard

Support for ARM64 on Windows

Open marcoancona opened this issue 1 year ago • 4 comments

Problem

As far as I understand, Realm does not yet provide binaries for Windows arm64, is that correct?

With the new Microsoft ARM PCs getting more popular, this starts feeling important. We use Realm on an Electron application, and in the last month, we got several requests for a native ARM build on Windows.

Solution

No response

Alternatives

No response

How important is this improvement for you?

Would be a major improvement

Feature would mainly be used with

Local Database only

marcoancona avatar Sep 04 '24 12:09 marcoancona

➤ PM Bot commented:

Jira ticket: RJS-2900

sync-by-unito[bot] avatar Sep 04 '24 12:09 sync-by-unito[bot]

Hey @kraenhansen, I know there must be a lot going on, but I wonder if you could ack this and let me know whether you see this coming or not, so we can plan accordingly.

As far as I can see, your build pipeline has a build matrix on Github Actions. Since Windows on Arm is supported by Github, would it be enough to add one more combination?

marcoancona avatar Dec 02 '24 15:12 marcoancona

let me know whether you see this coming or not, so we can plan accordingly.

Likely not going to happen. I don't see a future where we'll plan time to move this forward, given the product is EOL in less than a year from now. That being said, if the community provides a PR, I'd happily review and merge it.

Since Windows on Arm is supported by Github, would it be enough to add one more combination?

I suspect Realm Core builds for Windows arm64, but I'm not 100% sure (cc @nirinchev can you confirm that?) If so, it might be as simple as adding a new combination to the matrix.

kraenhansen avatar Dec 02 '24 16:12 kraenhansen

Yes - we do support windows arm64: https://github.com/realm/realm-dotnet/blob/e24061b6e91dc112142cda2d525cc60460e524fa/wrappers/build.ps1, so should not be impossible to build and test.

The Windows on Arm runners in GHA seem to be paid and rather limited in terms of preinstalled software, so might be a pain to actually run tests on those. My recommendation would be to build the arm library on x64 runners (that's fully supported by msvc) and then manually test that it works if you have access to arm hardware.

nirinchev avatar Dec 02 '24 16:12 nirinchev