IP::isPublic() calls
new IPSet( array( '10.0.0.0/8', # RFC 1918 (private) '172.16.0.0/12', # RFC 1918 (private) '192.168.0.0/16', # RFC 1918 (private) '0.0.0.0/8', # this network '127.0.0.0/8', # loopback 'fc00::/7', # RFC 4193 (local) '0:0:0:0:0:0:0:1', # loopback '169.254.0.0/16', # link-local 'fe80::/10', # link-local ) );
which ends up in an infinite loop when Jenkins calls various things via curl for the qunit tests:
https://integration.wikimedia.org/ci/job/mediawiki-extensions-qunit/30149/console
The same call works fine in other contexts on the same machine, and via curl on my local machine. IPSet does not have configuration or any other kind of environmental dependencies.