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

Stop supporting 32-bit platforms #4564

Open
SeanTAllen opened this issue Dec 4, 2024 · 4 comments
Open

Stop supporting 32-bit platforms #4564

SeanTAllen opened this issue Dec 4, 2024 · 4 comments

Comments

@SeanTAllen
Copy link
Member

We are considering dropping support for 32-bit platforms and only supporting 64-bit ones. We are a small group of volunteers and supporting 32-bit platforms is a bit difficult.

  • We can only do CI via QEMU which is far from awful but is also not so easy.
  • Getting development hardware for doing 32-bit support is non-trivial in some cases.
  • We experience what seem like bugs in dependencies far more on 32-bit than 64-bit platforms
  • We have a limited amount of time and devoting it to 32-bit platforms that we suspect aren't being used, seems wasteful when we could devote that time to other tasks

We'd like to hear if anyone is actively using Pony for serious work on any 32-bit platforms and if yes, what you are doing with it. To that end, we have opened this issue. If you can't talk about what you are doing publicly, please reach out to me privately via email.

@SeanTAllen SeanTAllen added the needs discussion Needs to be discussed further label Dec 4, 2024
@ponylang-main ponylang-main added the discuss during sync Should be discussed during an upcoming sync label Dec 4, 2024
@SeanTAllen SeanTAllen removed the discuss during sync Should be discussed during an upcoming sync label Dec 4, 2024
@SeanTAllen SeanTAllen pinned this issue Dec 4, 2024
@jemc
Copy link
Member

jemc commented Dec 17, 2024

One counter-example we may want to support in the future (though we don't today) is WebAssembly, where 32-bit is still relevant.

@ponylang-main ponylang-main added the discuss during sync Should be discussed during an upcoming sync label Dec 17, 2024
@SeanTAllen
Copy link
Member Author

One counter-example we may want to support in the future (though we don't today) is WebAssembly, where 32-bit is still relevant.

Assuming for a moment, that we only cared about 32-bit as a "might want to support WASM in the future", is there any reason to continue to do CI for 32-bit platforms? WASM might not already work. If we decided that that WASM in the future was a reason for 32-bit, we could decide:

  • remove CI for 32-bit we currently do
  • leave 32-bit support code much like we have OpenBSD support code; "it's there, it might work, we don't test it, we haven't had a strong reason to remove it"

This would leave us in the position of "if there's work on something in the future to make 32-bit work that we are aware of, we can decide to drop at that time or invest effort in maintaining".

@jemc
Copy link
Member

jemc commented Jan 6, 2025

I agree with the idea of dropping testing for those platforms, while keeping the support code as an "untested; best effort" basis.

@jemc
Copy link
Member

jemc commented Jan 7, 2025

We discussed in the sync call - Sean suggested we defer any decision here until we get a significant bit of work required to continue supporting the 32-bit CI setup (e.g. updating the runners there), and at such time we can make a decision whether to do that work to keep supporting, or to do the work to remove CI for official support.

@SeanTAllen SeanTAllen removed needs discussion Needs to be discussed further discuss during sync Should be discussed during an upcoming sync labels Jan 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants