Skip to content
forked from php/php-src

sync #3

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

Merged
merged 96 commits into from
Sep 12, 2020
Merged

sync #3

merged 96 commits into from
Sep 12, 2020

Conversation

chopins
Copy link
Owner

@chopins chopins commented Sep 12, 2020

No description provided.

cjbj and others added 30 commits September 8, 2020 15:48
Quoting from the bug report:

> The domain names passed to getmxrr() do not contain a trailing dot.
> DNS lookups which do not find records will (depending on the local
> resolver config) try again by adding the local domain to the end of
> the searched host/domain. In many environments there's an mx record
> for any subdomain of the local domain and the MX query will return
> a hit. But the test expects no hit. So the test fails when checking
> that "qa.php.net" does not have an MX record in DNS. In our local
> environment the resolver falls back to also check qa.php.net.kippdata.de
> which does have an MX record. Using "qa.php.net." instead of "qa.php.net"
> should fix this for everyone.
* PHP-7.3:
  Fixed bug #80077
* PHP-7.4:
  Fixed bug #80077
* PHP-7.4:
  Revert "Update libzip on macos"
  Revert "Manually build re2c on macos"
The only thing that can promoted are the path-related checked.
Everything else is input dependent and error-suppressing these
functions is both the typical and the recommended usage.
RC4 is considered insecure, and it's not possible to change the
default of these functions. As such, require the method to be
passed explicitly.

Closes GH-6093.
And don't replace trailing --CLEAN-- sections.
* PHP-7.4:
  Support more placeholders in bless_tests.php
Instead of using either oniguruma or pcre depending on which is
available. We always have PCRE, so use it. This ensures consistent
behavior.
Currently we treat paths with null bytes as a TypeError, which is
incorrect, and rather inconsistent, as we treat empty paths as
ValueError. We do this because the error is generated by zpp and
it's easier to always throw TypeError there.

This changes the zpp implementation to throw a TypeError only if
the type is actually wrong and throw ValueError for null bytes.
The error message is also split accordingly, to be more precise.

Closes GH-6094.
The opcache-only configuration has very little signal (i.e. it is
very rare that it fails while non-opcache and opcache+jit both
pass). Switch it to run only for nightly builds, so we get faster
results on normal builds.
force_ipv6 may be unused if compiling without ipv6 support.
As well as some basic mistakes in tests.
To match the PHP 5 behavior, we have to explicitly cater to `buffer` or
`data` being references.

Closes GH-6096.
* PHP-7.3:
  Fix #72941: Modifying bucket->data by-ref has no effect any longer
* PHP-7.4:
  Fix #72941: Modifying bucket->data by-ref has no effect any longer
cjbj and others added 29 commits September 10, 2020 16:45
* PHP-7.4:
  Fix azure i386 build, again
See nikic/php-ast#181

> Hm, I'm thinking it would make more sense to change the structure in php-src.
> All the function types have consistent AST structure, but there's no reason at
> all why classes should be consistent with functions.

It's unusual to have an unused child node between other child nodes that are
used (for name, extends, implements, and attributes of AST_CLASS)

> That gap is a leftover from a previous refactoring. An earlier version of
> attributes extended `zend_ast_decl` with a new member called `attributes` and
> therefore did not need to handle functions and classes in different ways.

Closes GH-6088
Instead of silently replacing with spaces.
They will now follow the canonical order of types. Older macros are
left intact due to maintaining BC.

Closes GH-6112
A recent commit[1] which fixed a memory leak introduced a regression
regarding the formerly liberal handling of IP addresses to bind to.  We
fix this by reverting that commit, and fix the memory leak where it
actually occurs.  In other words, this fix is less intrusive than the
former fix.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=0b8c83f5936581942715d14883cdebddc18bad30>

Closes GH-6104.
* PHP-7.3:
  Fix #80067: Omitting the port in bindto setting errors
* PHP-7.4:
  Fix #80067: Omitting the port in bindto setting errors
I've adjusted mb_send_mail() already, but of course the handling
in mail() should be the same.
If an argument error refers to a variadic argument, we normally
do not print the name of the variadic (as it is not referring to
an individual argument, but to the collection of all of them).
However, this was not the case for the userland argument type
error message, which did it's own formatting.

Closes GH-6101.
For "field name or field offset" parameters.

Also make $ctor_params an ?array parameter.
Also do a bit of refactoring at the same time.

Closes GH-6105
mb_ereg can throw now, so we need a dummy frame and need to
free the exception afterwards.
For dim/obj compound ops we don't have a result_var. Not sure why
this never caused issues before, but this can crash with JIT.
@chopins chopins merged commit 9850245 into chopins:master Sep 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.