Drop XP <= 9 compatibility
thekid opened this issue ยท 2 comments
Scope of Change
This RFC suggests dropping compatibility for XP 9 (and lower).
Rationale
XP 9.0.0 was released 2017-09-24, more than 4 years ago and has no support for PHP 8, released roughly a year ago at the time of writing.
Functionality
Libraries will drop support for XP 9 and lower with their next major release.
The typical diff will look something like this:
-"xp-framework/core": "^10.0 | ^9.0 | ^8.0 | ^7.0"
+"xp-framework/core": "^10.0"
We can also bump minimum library requirements by looking when they started supporting XP 10 when doing so, e.g.:
- "xp-framework/http": "^10.0 | ^9.0 | ^8.0 | ^7.0",
- "xp-framework/zip": "^9.0 | ^8.0 | ^7.0",
+ "xp-framework/http": "^10.0 | ^9.0",
+ "xp-framework/zip": "^9.0 | ^8.0",
Here's a complete list:
Library | Compatible with XP 10 since | Compatible with XP 10 only since | Status |
---|---|---|---|
xp-forge/address | 1.0.0 / 2020-04-04 | 3.0.0 / 2021-10-24 | โ |
xp-forge/aggregate | 1.0.0 / 2019-11-30 | ||
xp-forge/assert | 3.0.2 / 2020-04-05 | (deprecated) | ๐ |
xp-framework/ast | 3.0.3 / 2019-11-30 | 8.0.0 / 2022-01-07 | โ |
xp-framework/collections | 8.0.1 / 2019-12-01 | ||
xp-framework/command | 9.0.1 / 2019-12-02 | 11.0.0 / 2021-10-21 | โ |
xp-framework/compiler | 4.3.1 / 2019-11-30 | 7.0.0 / 2021-10-21 | โ |
xp-forge/coverage | 1.0.1 / 2020-04-05 | ||
xp-forge/credentials | 1.0.1 / 2019-11-30 | 3.0.0 / 2024-02-04 | โ |
xp-framework/csv | 8.0.2 / 2019-12-02 | 10.0.0 / 2021-10-21 | โ |
xp-forge/frontend | 1.0.1 / 2019-11-30 | 6.0.0 2023-12-25 | โ |
xp-framework/ftp | 9.1.1 / 2020-04-04 | 11.0.0 / 2021-09-26 | โ |
xp-forge/functions | 0.1.0 / 2020-04-04 | ||
xp-forge/geoip | 3.1.0 / 2020-04-05 | 5.0.0 / 2024-02-04 | โ |
xp-forge/google-authenticator | 4.0.1 / 2020-04-04 | ||
xp-forge/handlebars-templates | 0.1.0 / 2021-02-13 | ||
xp-forge/handlebars | 4.3.3 / 2019-12-01 | 7.0.0 / 2021-10-21 | โ |
xp-forge/hashing | 1.0.1 / 2019-12-01 | ||
xp-framework/http | 9.1.2 / 2019-12-01 | ||
xp-forge/ical | 2.1.2 / 2020-04-04 | 4.0.0 / 2021-10-24 | โ |
xp-framework/imaging | 8.0.1 / 2020-04-04 | 10.0.0 / 2022-02-28 | โ |
xp-forge/inject | 4.3.1 / 2019-12-01 | ||
xp-framework/io-collections | 8.0.1 / 2020-04-04 | ||
xp-forge/json-patch | 1.1.1 / 2020-04-05 | ||
xp-forge/json | 3.1.1 / 2019-12-01 | 5.0.0 / 2021-10-21 | โ |
xp-forge/keepass | 0.6.1 / 2019-12-01 | 2.0.0 / 2024-02-04 | โ |
xp-forge/lambda-ws | 0.1.0 / 2021-08-28 | 2.0.0 / 2023-11-20 | โ |
xp-forge/lambda | 0.1.0 / 2021-08-20 | 3.0.0 / 2021-09-26 | โ |
xp-framework/ldap | 8.1.3 / 2020-04-04 | ||
xp-framework/logging | 9.1.3 / 2019-12-01 | 11.0.0 / 2021-10-21 | โ |
xp-framework/mail | 8.0.2 / 2020-04-04 | ||
xp-forge/markdown | 5.2.1 / 2019-12-01 | 7.0.0 / 2023-03-23 | โ |
xp-forge/marshalling | 0.3.2 / 2019-12-01 | ||
xp-framework/math | 8.0.1 / 2019-12-01 | ||
xp-forge/measure | 2.0.1 / 2020-01-07 | ||
xp-forge/meilisearch | (no release yet) | ||
xp-framework/mocks | 7.0.1 / 2020-04-04 | ||
xp-forge/mongodb | 0.1.0 / 2020-08-04 | ||
xp-forge/mongodb-sessions | 0.1.0 / 2022-04-12 | 2.0.0 / 2024-02-04 | โ |
xp-forge/mustache | 5.3.2 / 2019-12-01 | 8.0.0 / 2021-10-21 | โ |
xp-forge/neo4j | 0.2.1 / 2019-12-01 | ||
xp-framework/networking | 9.3.3 / 2019-12-01 | ||
xp-forge/nsca | 6.0.1 / 2020-04-04 | ||
xp-forge/opensearch | 4.0.0 / 2020-04-04 | ||
xp-forge/parse | 2.0.2 / 2020-01-07 | ||
xp-forge/partial | 3.1.1 / 2020-04-04 | ||
xp-framework/patterns | 8.0.1 / 2020-04-04 | ||
xp-lang/php-compact-methods | 0.1.0 / 2019-09-09 | ||
xp-lang/php-is-operator | 0.1.0 / 2019-09-09 | ||
xp-forge/pivot | 2.0.1 / 2020-04-05 | ||
xp-forge/ratelimit | 2.0.1 / 2020-04-05 | ||
xp-framework/rdbms | 12.0.2 / 2019-12-01 | ||
xp-forge/redis-sessions | 1.0.0 / 2020-04-05 | 2.0.0 / 2024-02-04 | โ |
xp-forge/redis | 1.0.0 / 2019-12-01 | ||
xp-framework/reflection | 0.1.0 / 2020-12-07 | ||
xp-forge/rest-api | 1.1.2 / 2019-12-01 | ||
xp-forge/rest-client | 1.0.1 / 2019-12-01 | 3.0.0 / 2021-10-21 | โ |
xp-forge/sequence | 8.0.4 / 2019-12-01 | 10.0.0 / 2021-10-21 | โ |
xp-forge/sessions | 1.0.2 / 2019-12-01 | ||
xp-forge/sql-parser | 0.1.0 / 2020-11-07 | ||
xp-forge/sql | 1.0.0 / 2020-04-04 | ||
xp-forge/stomp | 10.1.2 / 2020-04-04 | 12.0.0 / 2021-10-24 | โ |
xp-forge/terminal | 1.0.0 / 2020-04-04 | ||
xp-framework/text-encode | 8.0.1 / 2020-04-04 | 10.0.0 / 2022-02-27 | โ |
xp-framework/tokenize | 8.1.1 / 2019-11-30 | ||
xp-framework/unittest | 10.1.1 / 2019-11-29 | (deprecated) | ๐ |
xp-forge/uri | 1.4.1 / 2019-12-01 | 3.0.0 / 2024-03-26 | โ |
xp-forge/web-auth | 0.1.0 / 2019-12-01 | 4.0.0 / 2024-02-04 | โ |
xp-forge/web | 1.10.1 / 2019-12-01 | 3.0.0 / 2021-09-26 | โ |
xp-forge/websockets | 1.0.0 / 2019-12-01 | 2.0.0 / 2021-10-24 | โ |
xp-framework/webtest | 6.6.0 / 2020-04-05 | ||
xp-framework/xml | 9.0.3 / 2020-04-04 | 11.0.0 / 2021-10-21 | โ |
xp-lang/xp-enums | 0.1.0 / 2019-10-06 | ||
xp-lang/xp-records | 0.1.0 / 2020-03-28 | ||
xp-forge/yaml | 5.2.1 / 2019-12-01 | 8.0.0 / 2024-02-04 | โ |
xp-framework/zip | 8.0.1 / 2019-12-02 | 10.0.0 / 2021-10-21 | โ |
Security considerations
None
Speed impact
Faster library installs.
Dependencies
BC breaks
Related documents
- PHP 8.0.0 release: https://www.php.net/ChangeLog-8.php#8.0.0
This means libraries can use MemoryOutputStream::bytes()
instead of getBytes()
. The former was added in XP 9.8.0, see https://github.com/xp-framework/core/releases/tag/v9.8.0
Updates for a 2 hour session on this cold & gray Sunday:
Library | Compatible with XP 10 since | Compatible with XP 10 only since | Status |
---|---|---|---|
xp-forge/credentials | 1.0.1 / 2019-11-30 | 3.0.0 / 2024-02-04 | โ |
xp-forge/geoip | 3.1.0 / 2020-04-05 | 5.0.0 / 2024-02-04 | โ |
xp-forge/keepass | 0.6.1 / 2019-12-01 | 2.0.0 / 2024-02-04 | โ |
xp-forge/mongodb-sessions | 0.1.0 / 2022-04-12 | 2.0.0 / 2024-02-04 | โ |
xp-forge/redis-sessions | 1.0.0 / 2020-04-05 | 2.0.0 / 2024-02-04 | โ |
xp-forge/web-auth | 0.1.0 / 2019-12-01 | 4.0.0 / 2024-02-04 | โ |
xp-forge/yaml | 5.2.1 / 2019-12-01 | 8.0.0 / 2024-02-04 | โ |