sabre-io / xml

sabre/xml is an XML library that you may not hate.
http://sabre.io/xml/
BSD 3-Clause "New" or "Revised" License
516 stars 77 forks source link

Set minimum PHP to 7.4 #220

Closed phil-davis closed 2 years ago

phil-davis commented 2 years ago

1) drop support for PHP 7.1 7.2 and 7.3. Support PHP 7.4 8.0 and 8.1 2) bump code style and analysis tools to their latest versions 3) adjust parameter types, return types, constants, variable types.... to be as specific as possible, using features available since PHP 7.4 4) bump the major version from 2 to 3, so that existing systems only grab this new code by specifying a major version bump - because they might have to touch some code (e.g. adding : void to a child function...) in order to use this.

This fixes issue #215 for this repo.

There are no other open PRs here, so I think we can do this one right away. If a serious bug is noticed in the old code, and we really need to make a patch release of 2.x then we can make a branch for that and backport the fix... But it is probably not worth bothering to set that up here - it might never be used.

codecov[bot] commented 2 years ago

Codecov Report

Merging #220 (66d35b4) into master (7c400d8) will decrease coverage by 0.20%. The diff coverage is 100.00%.

:exclamation: Current head 66d35b4 differs from pull request most recent head 4617c78. Consider uploading reports for the commit 4617c78 to get more accurate results

@@             Coverage Diff              @@
##             master     #220      +/-   ##
============================================
- Coverage     96.89%   96.68%   -0.21%     
  Complexity      116      116              
============================================
  Files            13       13              
  Lines           483      453      -30     
============================================
- Hits            468      438      -30     
  Misses           15       15              
Impacted Files Coverage Δ
lib/Deserializer/functions.php 89.69% <ø> (ø)
lib/LibXMLException.php 100.00% <ø> (ø)
lib/Serializer/functions.php 97.77% <ø> (-0.19%) :arrow_down:
lib/ContextStackTrait.php 100.00% <100.00%> (ø)
lib/Element/Base.php 100.00% <100.00%> (ø)
lib/Element/Cdata.php 100.00% <100.00%> (ø)
lib/Element/Elements.php 100.00% <100.00%> (ø)
lib/Element/KeyValue.php 100.00% <100.00%> (ø)
lib/Element/Uri.php 100.00% <100.00%> (ø)
lib/Element/XmlFragment.php 100.00% <100.00%> (ø)
... and 15 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more