I previoulsy worked with an unofficial alpine image (Pypy 7.3.0) to package a uwsgi application, and decided to switch to the official (Pypy 7.3.1) image.
Updating the uwsgi configuration to the new paths did not help.
It may be a problem inside uwsgi (especially since pypy3 support is rather fragile), however it could also be a regression so I wanted to report here.
The only information I got about the problem looks like this (stracing the uwsgi process):
stat("/opt/pypy//lib_pypy", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/opt/pypy/lib_pypy/x", 0x55b239982120) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/pypy/lib_pypy/pyvenv.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/pypy/lib_pypy/python36.zip", 0x55b239982120) = -1 ENOENT (No such file or directory)
stat("/opt/pypy/lib_pypy/lib-python/3", 0x55b239982120) = -1 ENOENT (No such file or directory)
lstat("/opt/pypy/lib_pypy", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
openat(AT_FDCWD, "/opt/pypy/pyvenv.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/opt/pypy/python36.zip", 0x55b239982120) = -1 ENOENT (No such file or directory)
stat("/opt/pypy/lib-python/3", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/opt/pypy/lib_pypy", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
write(2, "debug: OperationError:\n", 23debug: OperationError:
) = 23
write(2, "debug: operror-type: ModuleNotF"..., 42debug: operror-type: ModuleNotFoundError
) = 42
write(2, "debug: operror-value: No module"..., 44debug: operror-value: No module named 'os'
) = 44
write(2, "unable to set pypy home to \"/opt"..., 40unable to set pypy home to "/opt/pypy/"
) = 40
getpid() = 1041
exit_group(1) = ?
+++ exited with 1 +++
Do not hesitate to close this if irrelevant.