wp-includes/SimplePie/src/IRI.php:856Set the ihost. Returns true on success, false on failure (if there are any invalid characters).
$ihoststring|nullbool public function set_host(?string $ihost) { if ($ihost === null) { $this->ihost = null; return true; } elseif (substr($ihost, 0, 1) === '[' && substr($ihost, -1) === ']') { if (\SimplePie\Net\IPv6::check_ipv6(substr($ihost, 1, -1))) { $this->ihost = '[' . \SimplePie\Net\IPv6::compress(substr($ihost, 1, -1)) . ']'; } else { $this->ihost = null; return false; } } else { $ihost = $this->replace_invalid_with_pct_encoding($ihost, '!$&\'()*+,;='); // Lowercase, but ignore pct-encoded sections (as they should // remain uppercase). This must be done after the previous step // as that can add unescaped characters. $position = 0; $strlen = strlen($ihost); while (($position += strcspn($ihost, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ%', $position)) < $strlen) { if ($ihost[$position] === '%') { $position += 3; } else { $ihost[$position] = strtolower($ihost[$position]); $position++; } } $this->ihost = $ihost; } $this->scheme_normalization(); return true; }One change between 6.7.7 and 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
$ihost retyped from string to string|null.verified against sourcesrc/wp-includes/SimplePie/src/IRI.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.