Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raise minimum PHP version to 7.2 #1392

Merged
merged 8 commits into from
Nov 3, 2022
Merged

Raise minimum PHP version to 7.2 #1392

merged 8 commits into from
Nov 3, 2022

Commits on Nov 3, 2022

  1. Raise minimum PHP version to 7.2

    This will be required for the upcoming SimplePie version:
    simplepie/simplepie#743
    
    Debian 9 Stretch requiring PHP 7.0 became unsupported in June 2022:
    FreshRSS/FreshRSS#3321 (comment)
    
    Changelogs summary:
    
     - symfony/debug removed (installed version was v3.4.47)
    
     - paragonie/random_compat removed (installed version was v2.0.21)
    
     - symfony/polyfill-mbstring updated from v1.19.0 to v1.26.0
       See changes: symfony/polyfill-mbstring@v1.19.0...v1.26.0
       Release notes: https://github.com/symfony/polyfill-mbstring/releases/tag/v1.26.0
    
     - doctrine/lexer updated from 1.0.2 to 1.2.3
       See changes: doctrine/lexer@1.0.2...1.2.3
       Release notes: https://github.com/doctrine/lexer/releases/tag/1.2.3
    
     - symfony/polyfill-php72 updated from v1.19.0 to v1.26.0
       See changes: symfony/polyfill-php72@v1.19.0...v1.26.0
       Release notes: https://github.com/symfony/polyfill-php72/releases/tag/v1.26.0
    
     - symfony/polyfill-intl-normalizer updated from v1.19.0 to v1.26.0
       See changes: symfony/polyfill-intl-normalizer@v1.19.0...v1.26.0
       Release notes: https://github.com/symfony/polyfill-intl-normalizer/releases/tag/v1.26.0
    
     - symfony/polyfill-intl-idn updated from v1.19.0 to v1.26.0
       See changes: symfony/polyfill-intl-idn@v1.19.0...v1.26.0
       Release notes: https://github.com/symfony/polyfill-intl-idn/releases/tag/v1.26.0
    
     - psr/container installed in version 1.1.1
       Release notes: https://github.com/php-fig/container/releases/tag/1.1.1
    
     - symfony/service-contracts installed in version v1.1.13
       Release notes: https://github.com/symfony/service-contracts/releases/tag/v1.1.13
    
     - symfony/stopwatch updated from v3.4.47 to v4.4.46
       See changes: symfony/stopwatch@v3.4.47...v4.4.46
       Release notes: https://github.com/symfony/stopwatch/releases/tag/v4.4.46
    
     - symfony/polyfill-php80 installed in version v1.26.0
       Release notes: https://github.com/symfony/polyfill-php80/releases/tag/v1.26.0
    
     - symfony/process updated from v3.4.47 to v4.4.44
       See changes: symfony/process@v3.4.47...v4.4.44
       Release notes: https://github.com/symfony/process/releases/tag/v4.4.44
    
     - symfony/polyfill-php70 updated from v1.19.0 to v1.20.0
       See changes: symfony/polyfill-php70@v1.19.0...v1.20.0
       Release notes: https://github.com/symfony/polyfill-php70/releases/tag/v1.20.0
    
     - symfony/options-resolver updated from v3.4.47 to v4.4.44
       See changes: symfony/options-resolver@v3.4.47...v4.4.44
       Release notes: https://github.com/symfony/options-resolver/releases/tag/v4.4.44
    
     - symfony/finder updated from v3.4.47 to v4.4.44
       See changes: symfony/finder@v3.4.47...v4.4.44
       Release notes: https://github.com/symfony/finder/releases/tag/v4.4.44
    
     - symfony/polyfill-ctype updated from v1.19.0 to v1.26.0
       See changes: symfony/polyfill-ctype@v1.19.0...v1.26.0
       Release notes: https://github.com/symfony/polyfill-ctype/releases/tag/v1.26.0
    
     - symfony/filesystem updated from v3.4.47 to v4.4.42
       See changes: symfony/filesystem@v3.4.47...v4.4.42
       Release notes: https://github.com/symfony/filesystem/releases/tag/v4.4.42
    
     - symfony/event-dispatcher-contracts installed in version v1.1.13
       Release notes: https://github.com/symfony/event-dispatcher-contracts/releases/tag/v1.1.13
    
     - symfony/event-dispatcher updated from v3.4.47 to v4.4.44
       See changes: symfony/event-dispatcher@v3.4.47...v4.4.44
       Release notes: https://github.com/symfony/event-dispatcher/releases/tag/v4.4.44
    
     - symfony/polyfill-php73 installed in version v1.26.0
       Release notes: https://github.com/symfony/polyfill-php73/releases/tag/v1.26.0
    
     - symfony/console updated from v3.4.47 to v4.4.48
       See changes: symfony/console@v3.4.47...v4.4.48
       Release notes: https://github.com/symfony/console/releases/tag/v4.4.48
    
     - psr/cache installed in version 1.0.1
       Release notes: https://github.com/php-fig/cache/releases/tag/1.0.1
    
     - doctrine/annotations updated from v1.4.0 to 1.13.3
       See changes: doctrine/annotations@v1.4.0...1.13.3
       Release notes: https://github.com/doctrine/annotations/releases/tag/1.13.3
    
     - php-http/message updated from 1.7.2 to 1.13.0
       See changes: php-http/message@1.7.2...1.13.0
       Release notes: https://github.com/php-http/message/releases/tag/1.13.0
    
     - php-http/promise updated from v1.0.0 to 1.1.0
       See changes: php-http/promise@v1.0.0...1.1.0
       Release notes: https://github.com/php-http/promise/releases/tag/1.1.0
    
     - php-http/discovery updated from 1.6.1 to 1.14.3
       See changes: php-http/discovery@1.6.1...1.14.3
       Release notes: https://github.com/php-http/discovery/releases/tag/1.14.3
    
     - j0k3r/graby-site-config updated from 1.0.157 to 1.0.159
       See changes: j0k3r/graby-site-config@1.0.157...1.0.159
       Release notes: https://github.com/j0k3r/graby-site-config/releases/tag/1.0.159
    
     - fossar/htmlawed updated from 1.2.8 to 1.3.1
       See changes: fossar/HTMLawed@1.2.8...1.3.1
       Release notes: https://github.com/fossar/HTMLawed/releases/tag/1.3.1
    
     - symfony/deprecation-contracts installed in version v2.5.2
       Release notes: https://github.com/symfony/deprecation-contracts/releases/tag/v2.5.2
    
     - symfony/phpunit-bridge updated from v5.2.12 to v5.4.14
       See changes: symfony/phpunit-bridge@v5.2.12...v5.4.14
       Release notes: https://github.com/symfony/phpunit-bridge/releases/tag/v5.4.14
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    27b433d View commit details
    Browse the repository at this point in the history
  2. composer: Upgrade Graby and other dependencies

    Changelogs summary:
    
     - symfony/deprecation-contracts removed (installed version was v2.5.2)
    
     - fossar/tcpdf-parser removed (installed version was 6.2.16)
    
       PdfParser dropped the TCPDF dependency
       smalot/pdfparser#299
       and as a result, Graby dropped wallabag/tcpdf,
       j0k3r/graby@0b72866
       which it was overriding for compatibity with Wallabag.
       This allows us to drop this package, that was only added as a way to slim down selfoss
       194902c
    
     - smalot/pdfparser updated from v0.19.0 to v1.1.0
       See changes: smalot/pdfparser@v0.19.0...v1.1.0
       Release notes: https://github.com/smalot/pdfparser/releases/tag/v1.1.0
    
     - psr/http-client installed in version 1.0.1
       Release notes: https://github.com/php-fig/http-client/releases/tag/1.0.1
    
     - php-http/httplug updated from v1.1.0 to 2.3.0
       See changes: php-http/httplug@v1.1.0...2.3.0
       Release notes: https://github.com/php-http/httplug/releases/tag/2.3.0
    
     - psr/http-factory installed in version 1.0.1
       Release notes: https://github.com/php-fig/http-factory/releases/tag/1.0.1
    
     - php-http/client-common updated from 1.11.0 to 2.6.0
       See changes: php-http/client-common@1.11.0...2.6.0
       Release notes: https://github.com/php-http/client-common/releases/tag/2.6.0
    
     - j0k3r/httplug-ssrf-plugin updated from v1.0.0 to v2.0.1
       See changes: j0k3r/httplug-ssrf-plugin@v1.0.0...v2.0.1
       Release notes: https://github.com/j0k3r/httplug-ssrf-plugin/releases/tag/v2.0.1
    
     - http-interop/http-factory-guzzle installed in version 1.1.1
       Release notes: https://github.com/http-interop/http-factory-guzzle/releases/tag/1.1.1
    
     - j0k3r/graby updated from 2.0.0-alpha.0 to 2.4.1
       See changes: j0k3r/graby@2.0.0-alpha.0...2.4.1
       Release notes: https://github.com/j0k3r/graby/releases/tag/2.4.1
    
     - php-http/guzzle6-adapter updated from v1.1.1 to v2.0.2
       See changes: php-http/guzzle6-adapter@v1.1.1...v2.0.2
       Release notes: https://github.com/php-http/guzzle6-adapter/releases/tag/v2.0.2
    
     - symfony/phpunit-bridge updated from v5.4.14 to v6.1.6
       See changes: symfony/phpunit-bridge@v5.4.14...v6.1.6
       Release notes: https://github.com/symfony/phpunit-bridge/releases/tag/v6.1.6
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    9b35e16 View commit details
    Browse the repository at this point in the history
  3. composer: Upgrade to Guzzle 7

    Better support for PHP 8.1.
    
    Changelogs summary:
    
     - symfony/polyfill-intl-idn removed (installed version was v1.26.0)
    
     - php-http/guzzle6-adapter removed (installed version was v2.0.2)
    
     - guzzlehttp/psr7 updated from 1.9.0 to 2.4.3
       See changes: guzzle/psr7@1.9.0...2.4.3
       Release notes: https://github.com/guzzle/psr7/releases/tag/2.4.3
    
     - symfony/deprecation-contracts installed in version v2.5.2
       Release notes: https://github.com/symfony/deprecation-contracts/releases/tag/v2.5.2
    
     - guzzlehttp/guzzle updated from 6.5.8 to 7.5.0
       See changes: guzzle/guzzle@6.5.8...7.5.0
       Release notes: https://github.com/guzzle/guzzle/releases/tag/7.5.0
    
     - symfony/service-contracts updated from v1.1.13 to v2.5.2
       See changes: symfony/service-contracts@v1.1.13...v2.5.2
       Release notes: https://github.com/symfony/service-contracts/releases/tag/v2.5.2
    
     - symfony/stopwatch updated from v4.4.46 to v5.4.13
       See changes: symfony/stopwatch@v4.4.46...v5.4.13
       Release notes: https://github.com/symfony/stopwatch/releases/tag/v5.4.13
    
     - symfony/process updated from v4.4.44 to v5.4.11
       See changes: symfony/process@v4.4.44...v5.4.11
       Release notes: https://github.com/symfony/process/releases/tag/v5.4.11
    
     - symfony/options-resolver updated from v4.4.44 to v5.4.11
       See changes: symfony/options-resolver@v4.4.44...v5.4.11
       Release notes: https://github.com/symfony/options-resolver/releases/tag/v5.4.11
    
     - symfony/finder updated from v4.4.44 to v5.4.11
       See changes: symfony/finder@v4.4.44...v5.4.11
       Release notes: https://github.com/symfony/finder/releases/tag/v5.4.11
    
     - symfony/filesystem updated from v4.4.42 to v5.4.13
       See changes: symfony/filesystem@v4.4.42...v5.4.13
       Release notes: https://github.com/symfony/filesystem/releases/tag/v5.4.13
    
     - psr/event-dispatcher installed in version 1.0.0
       Release notes: https://github.com/php-fig/event-dispatcher/releases/tag/1.0.0
    
     - symfony/event-dispatcher-contracts updated from v1.1.13 to v2.5.2
       See changes: symfony/event-dispatcher-contracts@v1.1.13...v2.5.2
       Release notes: https://github.com/symfony/event-dispatcher-contracts/releases/tag/v2.5.2
    
     - symfony/event-dispatcher updated from v4.4.44 to v5.4.9
       See changes: symfony/event-dispatcher@v4.4.44...v5.4.9
       Release notes: https://github.com/symfony/event-dispatcher/releases/tag/v5.4.9
    
     - symfony/polyfill-intl-grapheme installed in version v1.26.0
       Release notes: https://github.com/symfony/polyfill-intl-grapheme/releases/tag/v1.26.0
    
     - symfony/string installed in version v5.4.15
       Release notes: https://github.com/symfony/string/releases/tag/v5.4.15
    
     - symfony/console updated from v4.4.48 to v5.4.15
       See changes: symfony/console@v4.4.48...v5.4.15
       Release notes: https://github.com/symfony/console/releases/tag/v5.4.15
    
     - j0k3r/graby downgraded from 2.4.1 to 2.3.2
       See changes: j0k3r/graby@2.4.1...2.3.2
       Release notes: https://github.com/j0k3r/graby/releases/tag/2.3.2
    
     - php-http/guzzle7-adapter installed in version 1.0.0
       Release notes: https://github.com/php-http/guzzle7-adapter/releases/tag/1.0.0
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    a157f87 View commit details
    Browse the repository at this point in the history
  4. composer: Update Dice

    Changelogs summary:
    
     - level-2/dice updated from 2.0.4 to 4.0.3
       See changes: Level-2/Dice@2.0.4...4.0.3
       Release notes: https://github.com/Level-2/Dice/releases/tag/4.0.3
    
    Dice is now immutable, we need to overwrite the variable.
    And change the container to inject the proper Dice instance.
    Also allows us to drop deprecation guards, since PHP 8.1 is now supported natively.
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    a4e6066 View commit details
    Browse the repository at this point in the history
  5. composer: Update Monolog

    Changelogs summary:
    
     - monolog/monolog updated from 1.27.1 to 2.8.0
       See changes: Seldaek/monolog@1.27.1...2.8.0
       Release notes: https://github.com/Seldaek/monolog/releases/tag/2.8.0
    
    Deprecates the `warn` method.
    `Monolog\Logger` now expects a string argument so we need to set up DI to provide it one in unit tests.
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    192900c View commit details
    Browse the repository at this point in the history
  6. Use PHP 7.2 goodies

    Mainly null-coalescing operator:
    https://www.php.net/releases/7_0_0.php
    square brackets list() syntax
    https://www.php.net/releases/7_1_0.php
    
    Converted using Rector 0.14.6 with some manual cleanups:
    
    ```php
    <?php
    
    use Rector\Config\RectorConfig;
    use Rector\Set\ValueObject\LevelSetList;
    
    return static function (RectorConfig $rectorConfig): void {
        $rectorConfig->paths([
            __DIR__ . '/src',
            __DIR__ . '/tests',
        ]);
    
       $rectorConfig->sets([
           LevelSetList::UP_TO_PHP_72
       ]);
    };
    ```
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    50fd449 View commit details
    Browse the repository at this point in the history
  7. Scrub PHP 5 compatibility code

    `Throwable` is available since PHP 7.0.0 so we can just catch that directly.
    https://www.php.net/releases/7_0_0.php
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    090c226 View commit details
    Browse the repository at this point in the history
  8. composer: Upgrade PHP-CS-Fixer

    Short arrays are enabled by default.
    
    Changelogs summary:
    
     - symfony/polyfill-php72 removed (installed version was v1.26.0)
    
     - symfony/polyfill-php70 removed (installed version was v1.20.0)
    
     - symfony/polyfill-php81 installed in version v1.26.0
       Release notes: https://github.com/symfony/polyfill-php81/releases/tag/v1.26.0
    
     - php-cs-fixer/diff updated from v1.3.1 to v2.0.2
       See changes: PHP-CS-Fixer/diff@v1.3.1...v2.0.2
       Release notes: https://github.com/PHP-CS-Fixer/diff/releases/tag/v2.0.2
    
     - friendsofphp/php-cs-fixer updated from v2.19.3 to v3.4.0
       See changes: PHP-CS-Fixer/PHP-CS-Fixer@v2.19.3...v3.4.0
       Release notes: https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/tag/v3.4.0
    jtojnar committed Nov 3, 2022
    Configuration menu
    Copy the full SHA
    9840420 View commit details
    Browse the repository at this point in the history