mojolicious / mojo

:sparkles: Mojolicious - Perl real-time web framework

Home Page:https://mojolicious.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mingw-w64 on MSYS2 MINGW64 needs IO 1.51+ to pass tests of Mojolicious

yuki-kimoto opened this issue · comments

  • Mojolicious version: 9.36
  • Perl version: v5.32.1
  • Operating system: mingw-w64 on MSYS2 MINGW64

Steps to reproduce the behavior

cpanm Mojolicious

Expected behavior

All tests are passed.

Actual behavior

t/mojo/daemon.t ............................     # No tests run!

#   Failed test 'No tests run for subtest "Minimal application"'
#   at t/mojo/daemon.t line 36.
t/mojo/daemon.t ............................ 1/? IO::Poll::poll not implemented on this architecture at C:\msys64\home\kimot\.cpanm\work\1715129973.17512\Mojolicious-9.36\blib\lib/Mojo/Reactor/Poll.pm line 55.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 1.
t/mojo/daemon.t ............................ Dubious, test returned 255 (wstat 65280, 0xff00)

I installed latest IO module. This was fixed.

https://metacpan.org/dist/IO/changes

IO 1.51
    * Fix dist/IO/poll.h for mingw-w64 runtimes 9.0 and later

I think mingw-w64 needs IO 1.51+ to pass tests of Mojolicious.

I don't think there's anything we would do for that. https://docs.mojolicious.org/Mojolicious/Guides/FAQ#How-well-is-Windows-supported-by-Mojolicious

Can you reliably detect that it is mingw and not just windows? If so then in theory we could dynamcially inject the prereq but we don't do that in any other cases and to make an exception for one windows dist is going to be a tough sell.

OK.

This problem will be resolved in the future because IO module is updated when Perl is updated.