Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); Bump required libcurl version to 7.29.0 by cmb69 · Pull Request #4917 · php/php-src · GitHub
Skip to content

Bump required libcurl version to 7.29.0 - #4917

Closed
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1
Closed

Bump required libcurl version to 7.29.0#4917
cmb69 wants to merge 6 commits into
php:masterfrom
cmb69:bump-curl-7.17.1

Conversation

@cmb69

Copy link
Copy Markdown
Member

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of CURLE_* constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.

So we remove all respective PHP CURLE_* constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (CURLE_OBSOLETE*), since these error codes
are not supposed to be returned ever.

Renamed constants:

  • CURLE_FTP_ACCESS_DENIEDCURLE_REMOTE_ACCESS_DENIED
  • CURLE_FTP_BAD_DOWNLOAD_RESUMECURLE_BAD_DOWNLOAD_RESUME
  • CURLE_FTP_COULDNT_SET_BINARYCURLE_FTP_COULDNT_SET_TYPE
  • CURLE_FTP_COULDNT_STOR_FILECURLE_UPLOAD_FAILED
  • CURLE_FTP_PARTIAL_FILECURLE_PARTIAL_FILE
  • CURLE_FTP_QUOTE_ERRORCURLE_QUOTE_ERROR
  • CURLE_HTTP_NOT_FOUNDCURLE_HTTP_RETURNED_ERROR
  • CURLE_HTTP_PORT_FAILEDCURLE_INTERFACE_FAILED
  • CURLE_HTTP_RANGE_ERRORCURLE_RANGE_ERROR
  • CURLE_OPERATION_TIMEOUTEDCURLE_OPERATION_TIMEDOUT
  • CURLE_SSL_PEER_CERTIFICATECURLE_PEER_FAILED_VERIFICATION
  • CURLE_URL_MALFORMAT_USERCURLE_NOT_BUILT_IN
  • CURLE_FTP_SSL_FAILEDCURLE_USE_SSL_FAILED

Removed constants:

  • CURLE_BAD_CALLING_ORDER
  • CURLE_BAD_PASSWORD_ENTERED
  • CURLE_FTP_CANT_RECONNECT
  • CURLE_FTP_COULDNT_GET_SIZE
  • CURLE_FTP_COULDNT_SET_ASCII
  • CURLE_FTP_USER_PASSWORD_INCORRECT
  • CURLE_FTP_WEIRD_USER_REPLY
  • CURLE_FTP_WRITE_ERROR
  • CURLE_LIBRARY_NOT_FOUND
  • CURLE_OBSOLETE
  • CURLE_SHARE_IN_USE
  • CURLE_MALFORMAT_USER

While I find it a bit unfortunate that we can't deprecate the removed/renamed constants, I think this removal/renaming has to be done for PHP 8.0, since otherwise we're at risk that we can't build against future libcurl versions anymore.

Even with this patch, building with CURL_NO_OLDIES defined still doesn't succeed, but I'm planning to cater to the seven other obsolete constant in a separate PR, because these appear to be more controversial, mainly since they have only been obsoleted in later versions.

libcurl 7.17.1 has been released 12 years ago, so it doesn't seem
reasonable to still cater to older versions. The main reason for this
version bump is to cater to a mass renaming of `CURLE_*` constants in
7.17.0 (and a single further renaming in 7.17.1), whereby many of the
old constants have been marked obsolete, and according to curl.h have
been scheduled for removal in 2009 already.
So we remove all respective PHP `CURLE_*` constants, and add not yet
available replacements, except for those constants which have been
marked as being obsolete (`CURLE_OBSOLETE*`), since these error codes
are not supposed to be returned ever.
Renamed constants:
* `CURLE_FTP_ACCESS_DENIED` → `CURLE_REMOTE_ACCESS_DENIED`
* `CURLE_FTP_BAD_DOWNLOAD_RESUME` → `CURLE_BAD_DOWNLOAD_RESUME`
* `CURLE_FTP_COULDNT_SET_BINARY` → `CURLE_FTP_COULDNT_SET_TYPE`
* `CURLE_FTP_COULDNT_STOR_FILE` → `CURLE_UPLOAD_FAILED`
* `CURLE_FTP_PARTIAL_FILE` → `CURLE_PARTIAL_FILE`
* `CURLE_FTP_QUOTE_ERROR` → `CURLE_QUOTE_ERROR`
* `CURLE_HTTP_NOT_FOUND` → `CURLE_HTTP_RETURNED_ERROR`
* `CURLE_HTTP_PORT_FAILED` → `CURLE_INTERFACE_FAILED`
* `CURLE_HTTP_RANGE_ERROR` → `CURLE_RANGE_ERROR`
* `CURLE_OPERATION_TIMEOUTED` → `CURLE_OPERATION_TIMEDOUT`
* `CURLE_SSL_PEER_CERTIFICATE` → `CURLE_PEER_FAILED_VERIFICATION`
* `CURLE_URL_MALFORMAT_USER` → `CURLE_NOT_BUILT_IN`
* `CURLE_FTP_SSL_FAILED` → `CURLE_USE_SSL_FAILED`
Removed constants:
* `CURLE_BAD_CALLING_ORDER`
* `CURLE_BAD_PASSWORD_ENTERED`
* `CURLE_FTP_CANT_RECONNECT`
* `CURLE_FTP_COULDNT_GET_SIZE`
* `CURLE_FTP_COULDNT_SET_ASCII`
* `CURLE_FTP_USER_PASSWORD_INCORRECT`
* `CURLE_FTP_WEIRD_USER_REPLY`
* `CURLE_FTP_WRITE_ERROR`
* `CURLE_LIBRARY_NOT_FOUND`
* `CURLE_OBSOLETE`
* `CURLE_SHARE_IN_USE`
* `CURLE_MALFORMAT_USER`
@nikic

Copy link
Copy Markdown
Member

I've opened #5072 to add support for deprecation constant. I think our course of action here should be to deprecate the old names and internally define their values to the new constants. That way we can avoid issues if the constants are removed, but can handle the deprecation/removal on our own schedule (as you mention, there are a number that are more recent).

@cmb69

Copy link
Copy Markdown
MemberAuthor

Thanks! That sounds sensible. Will update the PR ASAP.

@cmb69cmb69 changed the title Bump required libcurl version to 7.17.1[WiP] Bump required libcurl version to 7.17.1Jan 10, 2020
@remicollet

Copy link
Copy Markdown
Member

Even RHEL / CentOS 6 have 7.19.7, and is probably the older maintained distribution (and will be EOL in a few months), and BTW most of lib. are already outdated and recent PHP 7.4 can not be build there without some big effort.

RHEL / CentOS 7 (5 years old, will be maintained until 2024) have 7.29.0

So fine for me to bump mininal required version to anything less than 7.29

@Girgias

Copy link
Copy Markdown
Member

As said on the mailing list, I would rather see a "major" bump in the required version and bump it directly to 7.29.0 than go for an older release.

But just my opinion :)

Let's wait for PR php#5072, and act accordingly then.
Apparently, bumping the requirements only to libcurl >= 7.19.1 was very
conservative, and several devs suggested to bump the requirements to
libcurl >= 7.29.0 right away, we follow suit. After all, libcurl
7.29.0 will be almost eight years old when PHP 8.0.0 will be released,
so at least this version is supposed to be available everywhere.
@cmb69

Copy link
Copy Markdown
MemberAuthor

I have now undone the removal of the constants (which can still be done later; should wait for PR #5072), but bumped the requirements to libcurl >= 7.29.0, which appears to have consensus.

@cmb69cmb69 changed the title [WiP] Bump required libcurl version to 7.17.1Bump required libcurl version to 7.29.0Jan 16, 2020
Since we do not longer support libcurl < 7.29.0, these (parts of the)
tests are no longer required.

@nikicnikic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo one test.

Comment threadext/curl/tests/bug45161.phpt
@cmb69

Copy link
Copy Markdown
MemberAuthor

Applied as 7426e3b. Thanks!

@cmb69cmb69 closed this Jan 19, 2020
@cmb69
cmb69 deleted the bump-curl-7.17.1 branch January 19, 2020 13:11
@carusogabrielcarusogabriel added this to the PHP 8.0 milestone May 29, 2020
Ayesh added a commit to Ayesh/php-src that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Girgias pushed a commit that referenced this pull request Jan 31, 2024
Bumps the minimum required libcurl version to 7.61.0.
Please also see #4917, which bumped minimum libcurl version to the current >= 7.29.0.
This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept).
Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the
libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs.
- Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev)
- Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev)
- CentOS/RHEL 7: 7.29
- RHEL 8/Rocky 8/EL 8: 7.61
- Fedora 38: 7.87
RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely
bump the minimum libcurl version.
7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is
a current and supported RHEL version.
Sign up for freeto 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.

5 participants

@cmb69@nikic@remicollet@Girgias@carusogabriel