-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Test online tests in CI #8390
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
Test online tests in CI #8390
Conversation
81b5407
to
0393ad0
Compare
there is one failing test on MacOS, is it fixable or should the test be skipped on MacOS? |
this online test is failing often:
can the test file be downloaded and server using a local test server? |
I'm not even sure that we need to keep this test. It is a regression test for an upstream bug which has been fixed some years ago. If we want to keep the test, we likely could use a local copy of docbook.rng (would need to double-check its license), but we also could rewrite the test to use some simpler *.rng (it's just about using a non-supported tag name). |
I will remove the test, fixed years ago, for Windows only and also never an issue with php-src code itself. |
0393ad0
to
2d39ea4
Compare
The bug affected all systems, and has been fixed upstream in the meantime. |
yes, with other part of my head on the Windows CI PR... :D About the failing test on MacOS:
can the support be fixed easily or should the test with |
I wouldn't know. Maybe @devnexen does? |
ext/sockets/sockets.c
Outdated
@@ -482,7 +482,7 @@ static PHP_MINIT_FUNCTION(sockets) | |||
REGISTER_LONG_CONSTANT("MSG_TRUNC", MSG_TRUNC, CONST_CS | CONST_PERSISTENT); | |||
REGISTER_LONG_CONSTANT("MSG_PEEK", MSG_PEEK, CONST_CS | CONST_PERSISTENT); | |||
REGISTER_LONG_CONSTANT("MSG_DONTROUTE", MSG_DONTROUTE, CONST_CS | CONST_PERSISTENT); | |||
#ifdef MSG_EOR | |||
#if defined(MSG_EOR) && !defined(__APPLE__) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
google for MSG_EOR macos
it seems it is either completely unsupported or it needs SEQPACKET
, but it is not used by php
if someone knows better, please advise
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@devnexen do you know?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We cannot change this (definitely not for any of the stable versions, but I don't see a compelling reason to change it for master either). The userland constant should be defined on macOS as well (even if it wouldn't make sense there).
What we likely should change is socket_send.phpt; it seems to me that the MSG_EOR
case only works by accident (where it works), since socket_send()
is a wrapper for send(2)
, and POSIX specifies:
MSG_EOR
Terminates a record (if supported by the protocol).
The Linux send manpage clarifies:
MSG_EOR (since Linux 2.2)
Terminates a record (when this notion is supported, as for
sockets of type SOCK_SEQPACKET).
However, the socket we're using here is of type SOCK_STREAM
.
It would be good if someone experienced with sockets could review that test; and we should reconsider connecting to a domain which we don't control (yahoo.com).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@devnexen ext/sockets/tests/socket_send.phpt
test is failing on MacOS (not in CI, as online tests are skipped), do you think the code can be fixed or the MSG_EOR
test be skipped like in https://github.com/php/php-src/pull/8390/files#diff-a516d52fc571b5da772a0ff19826e9bd371e3562eab95ca4a2b71108dda1da8bR26?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #8390 (comment).
There has not been any recent activity in this PR. It will automatically be closed in 7 days if no further action is taken. |
not stale |
a02327a
to
4a643cf
Compare
4a643cf
to
d14c312
Compare
I am not in favor of this as it might depend on external resources that might eventually stop working. In general we should more look into replacing the online tests as often those tests could be done differently and not require it. |
This is quite recursive statement. Of course, no external/online tests would be the best. But in a situation they exist, I found them better to be executed as long as there are no frequent random CI failures because of them. Can we aggree on this @bukka or do you have some reason why we should close this PR instead? |
There has not been any recent activity in this PR. It will automatically be closed in 7 days if no further action is taken. |
CI setup already heavily relies on internet connection, so run online tests in CI too.