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

64-bit PHP required? #852

Closed
neildarlow opened this issue Jan 13, 2023 · 5 comments
Closed

64-bit PHP required? #852

neildarlow opened this issue Jan 13, 2023 · 5 comments

Comments

@neildarlow
Copy link

Describe the bug
After updating to snappymail-2.24.5 and accessing the UI I receive:
[301] Your PHP version is 32bit, 64bit is required!

To Reproduce
Steps to reproduce the behavior:

  1. Update existing 2.23.x snappymail installation to 2.24.5
  2. Access the snappymail UI from a web browser
  3. Observe error message: [301] Your PHP version is 32bit, 64bit is required!

Expected behavior
Operation should be as in snappymail 2.23.x and earlier versions

Screenshots
N/A

Please complete the following information:

  • Browser: Firefox
  • IMAP daemon: Dovecot
  • PHP version: php-fpm-8.1.13 on ArchlinuxARM 32-bit
  • SnappyMail Version: 2.24.5

Debug/logging information
Place them here (few lines) or as attachments (many lines)

Additional context
Add any other context about the problem here.

@the-djmaze
Copy link
Owner

I've added some 32bit info in a different issue.
#830 (comment)

Most of the time SnappyMail will work on 32bit, but not always.

@neildarlow
Copy link
Author

Unfortunately, I am using 32-bit hardware (an ODROID HC1) and this move will force me to investigate creating a new 64 bit server which isn't easy based on low-power requirements, dual gigabit ethernet ports etc.

I spent a lot of time locating webmail applications and Snappymail was the best I've come across (I was previously using Cypht but it's becoming too influenced by the Tiki project and its developers) due to being lightweight, easy to update etc.

@the-djmaze
Copy link
Owner

You can disable the check in https://github.com/the-djmaze/snappymail/blob/master/snappymail/v/0.0.0/setup.php
Then just hope everything works.

@neildarlow
Copy link
Author

Hi,

For now, disabling the check is an option.

The integer size problem seems, to me, to be easily mitigated by changing PHP's internal representation of integers to 64-bit for 32-bit platforms. IMAP server implementations could transition UIDLs to 64-bit also and not be affected at all.

If the response is to deprecate 32-bit builds, which might have implications for platforms with long-term-support, then perhaps it might be wise to add a notice in Snappymail's README.md that 32-bit PHP installations aren't supported unless users choose to disable the version check - and explain the consequences of doing so.

Thanks for your responses.
Neil

@the-djmaze
Copy link
Owner

We can't modify PHP internals.
The alternative is to use float or string, but then checks need to be added to prevent invalid numerals.

IMAP UID is 32bit, but JMAP id's are not and SnappyMail tries to support JMAP as well.
RainLoop did use unvalidated strings, so that is a difference.

Your idea to have a warning in the README is not enough as almost nobody really reads something (even when shouting in capslock).
So maybe the about page in admin would be better as that also gives more info about supported PHP features/extensions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants