[ 
https://issues.apache.org/jira/browse/THRIFT-6334?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jens Geyer updated THRIFT-6334:
-------------------------------
    Description: 
PHP 8.1 reached end of life on 2025-12-31. 8.2 still receives upstream security 
support until 2026-12-31, so it becomes the supported floor for 0.26.0. It 
stays the floor until 2027: once it has reached its end of life, the policy 
below makes 8.3 the next floor.

This change:
* raises the {{composer.json}} requirement to {{^8.2}} and the 
{{lib/php/README.md}} minimum to 8.2;
* narrows the PHP CI matrix from {{\[8.1, 8.2, 8.3, 8.4, 8.5]}} to {{\[8.2, 
8.3, 8.4, 8.5]}} and moves the static-analysis job to 8.2;
* moves the {{ubuntu-jammy}} and {{ubuntu-focal}} build images to PHP 8.2 (both 
via {{ppa:ondrej/php}});
* updates the PHP row in {{LANGUAGES.md}}.

It also records a *version support policy* in {{LANGUAGES.md}}: Thrift targets 
the language/runtime versions still receiving upstream support (active or 
security) at release time; older, end-of-life versions are kept only while the 
cost is manageable, and dropped when that is no longer practical -- for example 
when an end-of-life version carries defects that affect Thrift and that its 
upstream will no longer fix, as PHP 8.1 does. This makes future minimum-version 
changes follow a stated rule rather than a per-release debate.

Note: this raises the minimum PHP version, so it is a breaking change for users 
still on PHP 8.1.

_Drafted with AI assistance (Claude Opus 4.8, Claude Opus 5); reviewed and 
filed by Jens Geyer._


  was:
PHP 8.1 reached end of life on 2025-12-31 and 8.2 reaches it on 2026-12-31. 8.3 
is the oldest release still receiving upstream security support, so it becomes 
the supported floor for 0.26.0.

This change:
* raises the {{composer.json}} requirement to {{^8.3}} and the 
{{lib/php/README.md}} minimum to 8.3;
* narrows the PHP CI matrix from {{[8.1, 8.2, 8.3, 8.4, 8.5]}} to {{[8.3, 8.4, 
8.5]}} and the static-analysis job to 8.3;
* moves the {{ubuntu-jammy}} and {{ubuntu-focal}} build images to PHP 8.3 (both 
via {{ppa:ondrej/php}});
* updates the PHP row in {{LANGUAGES.md}}.

It also records a *version support policy* in {{LANGUAGES.md}}: Thrift targets 
the language/runtime versions still receiving upstream support (active or 
security) at release time; older, end-of-life versions are kept only while the 
cost is manageable, and dropped when that is no longer practical -- for example 
when an end-of-life version carries defects that affect Thrift and that its 
upstream will no longer fix, as PHP 8.1 does. This makes future minimum-version 
changes follow a stated rule rather than a per-release debate.

Note: this raises the minimum PHP version, so it is a breaking change for users 
still on PHP 8.1 or 8.2.

_Drafted with AI assistance (Claude Opus 4.8); reviewed and filed by Jens 
Geyer._

        Summary: Adopt a version support policy and require PHP 8.2  (was: 
Adopt a version support policy and require PHP 8.3)

> Adopt a version support policy and require PHP 8.2
> --------------------------------------------------
>
>                 Key: THRIFT-6334
>                 URL: https://issues.apache.org/jira/browse/THRIFT-6334
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Build Process, Documentation, PHP - Library
>            Reporter: Jens Geyer
>            Priority: Major
>             Fix For: 0.26.0
>
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> PHP 8.1 reached end of life on 2025-12-31. 8.2 still receives upstream 
> security support until 2026-12-31, so it becomes the supported floor for 
> 0.26.0. It stays the floor until 2027: once it has reached its end of life, 
> the policy below makes 8.3 the next floor.
> This change:
> * raises the {{composer.json}} requirement to {{^8.2}} and the 
> {{lib/php/README.md}} minimum to 8.2;
> * narrows the PHP CI matrix from {{\[8.1, 8.2, 8.3, 8.4, 8.5]}} to {{\[8.2, 
> 8.3, 8.4, 8.5]}} and moves the static-analysis job to 8.2;
> * moves the {{ubuntu-jammy}} and {{ubuntu-focal}} build images to PHP 8.2 
> (both via {{ppa:ondrej/php}});
> * updates the PHP row in {{LANGUAGES.md}}.
> It also records a *version support policy* in {{LANGUAGES.md}}: Thrift 
> targets the language/runtime versions still receiving upstream support 
> (active or security) at release time; older, end-of-life versions are kept 
> only while the cost is manageable, and dropped when that is no longer 
> practical -- for example when an end-of-life version carries defects that 
> affect Thrift and that its upstream will no longer fix, as PHP 8.1 does. This 
> makes future minimum-version changes follow a stated rule rather than a 
> per-release debate.
> Note: this raises the minimum PHP version, so it is a breaking change for 
> users still on PHP 8.1.
> _Drafted with AI assistance (Claude Opus 4.8, Claude Opus 5); reviewed and 
> filed by Jens Geyer._



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to