WordPress.org

Make WordPress Core

Changeset 46290 for trunk/composer.lock


Ignore:
Timestamp:
09/25/2019 01:46:55 PM (16 months ago)
Author:
desrosj
Message:

Build/Test Tools: Introduce automated PHP compatibility checking.

This change introduces a new Composer script, compat that will scan the codebase for (detectable) potential PHP compatibility issues using the PHP_CodeSniffer and a custom ruleset based off of the PHPCompayibilityWP ruleset (phpcompat.xml.dist).

The command will be run as a separate job within each Travis build. While many compatibility issues and false positives have already been corrected in this commit and other Trac tickets, there are still some remaining. For that reason, the job is allowed to fail while the remainder of the potential compatibility issues are investigated and addressed. After those are resolved, the job should be set as required to pass to help prevent new compatibility issues from being introduced.

Props desrosj, jrf, all PHPCompatibilityWP and PHPCompatibility contributors.
Fixes #46152.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/composer.lock

    r46200 r46290  
    55        "This file is @generated automatically"
    66    ],
    7     "content-hash": "56c797c5309702adf0f49bd274a364f3",
     7    "content-hash": "ca8f46e0b3cba61c076c033cc7143d3a",
    88    "packages": [],
    99    "packages-dev": [
     
    7373            ],
    7474            "time": "2018-10-26T13:21:45+00:00"
     75        },
     76        {
     77            "name": "phpcompatibility/php-compatibility",
     78            "version": "9.3.1",
     79            "source": {
     80                "type": "git",
     81                "url": "https://github.com/PHPCompatibility/PHPCompatibility.git",
     82                "reference": "9999344e47e7af6b00e1a898eacc4e4368fb7196"
     83            },
     84            "dist": {
     85                "type": "zip",
     86                "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9999344e47e7af6b00e1a898eacc4e4368fb7196",
     87                "reference": "9999344e47e7af6b00e1a898eacc4e4368fb7196",
     88                "shasum": ""
     89            },
     90            "require": {
     91                "php": ">=5.3",
     92                "squizlabs/php_codesniffer": "^2.3 || ^3.0.2"
     93            },
     94            "conflict": {
     95                "squizlabs/php_codesniffer": "2.6.2"
     96            },
     97            "require-dev": {
     98                "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0"
     99            },
     100            "suggest": {
     101                "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.",
     102                "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
     103            },
     104            "type": "phpcodesniffer-standard",
     105            "notification-url": "https://packagist.org/downloads/",
     106            "license": [
     107                "LGPL-3.0-or-later"
     108            ],
     109            "authors": [
     110                {
     111                    "name": "Wim Godden",
     112                    "homepage": "https://github.com/wimg",
     113                    "role": "lead"
     114                },
     115                {
     116                    "name": "Juliette Reinders Folmer",
     117                    "homepage": "https://github.com/jrfnl",
     118                    "role": "lead"
     119                },
     120                {
     121                    "name": "Contributors",
     122                    "homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors"
     123                }
     124            ],
     125            "description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.",
     126            "homepage": "http://techblog.wimgodden.be/tag/codesniffer/",
     127            "keywords": [
     128                "compatibility",
     129                "phpcs",
     130                "standards"
     131            ],
     132            "time": "2019-09-05T18:36:49+00:00"
     133        },
     134        {
     135            "name": "phpcompatibility/phpcompatibility-paragonie",
     136            "version": "1.1.0",
     137            "source": {
     138                "type": "git",
     139                "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git",
     140                "reference": "b1bb79a7cab1fb856b56f1b5cf110b6e52d8e936"
     141            },
     142            "dist": {
     143                "type": "zip",
     144                "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/b1bb79a7cab1fb856b56f1b5cf110b6e52d8e936",
     145                "reference": "b1bb79a7cab1fb856b56f1b5cf110b6e52d8e936",
     146                "shasum": ""
     147            },
     148            "require": {
     149                "phpcompatibility/php-compatibility": "^9.0"
     150            },
     151            "require-dev": {
     152                "dealerdirect/phpcodesniffer-composer-installer": "^0.5",
     153                "paragonie/random_compat": "dev-master",
     154                "paragonie/sodium_compat": "dev-master"
     155            },
     156            "suggest": {
     157                "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
     158                "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
     159            },
     160            "type": "phpcodesniffer-standard",
     161            "notification-url": "https://packagist.org/downloads/",
     162            "license": [
     163                "LGPL-3.0-or-later"
     164            ],
     165            "authors": [
     166                {
     167                    "name": "Wim Godden",
     168                    "role": "lead"
     169                },
     170                {
     171                    "name": "Juliette Reinders Folmer",
     172                    "role": "lead"
     173                }
     174            ],
     175            "description": "A set of rulesets for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.",
     176            "homepage": "http://phpcompatibility.com/",
     177            "keywords": [
     178                "compatibility",
     179                "paragonie",
     180                "phpcs",
     181                "polyfill",
     182                "standards"
     183            ],
     184            "time": "2019-08-28T15:58:19+00:00"
     185        },
     186        {
     187            "name": "phpcompatibility/phpcompatibility-wp",
     188            "version": "2.1.0",
     189            "source": {
     190                "type": "git",
     191                "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git",
     192                "reference": "41bef18ba688af638b7310666db28e1ea9158b2f"
     193            },
     194            "dist": {
     195                "type": "zip",
     196                "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/41bef18ba688af638b7310666db28e1ea9158b2f",
     197                "reference": "41bef18ba688af638b7310666db28e1ea9158b2f",
     198                "shasum": ""
     199            },
     200            "require": {
     201                "phpcompatibility/php-compatibility": "^9.0",
     202                "phpcompatibility/phpcompatibility-paragonie": "^1.0"
     203            },
     204            "require-dev": {
     205                "dealerdirect/phpcodesniffer-composer-installer": "^0.5"
     206            },
     207            "suggest": {
     208                "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
     209                "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
     210            },
     211            "type": "phpcodesniffer-standard",
     212            "notification-url": "https://packagist.org/downloads/",
     213            "license": [
     214                "LGPL-3.0-or-later"
     215            ],
     216            "authors": [
     217                {
     218                    "name": "Wim Godden",
     219                    "role": "lead"
     220                },
     221                {
     222                    "name": "Juliette Reinders Folmer",
     223                    "role": "lead"
     224                }
     225            ],
     226            "description": "A ruleset for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.",
     227            "homepage": "http://phpcompatibility.com/",
     228            "keywords": [
     229                "compatibility",
     230                "phpcs",
     231                "standards",
     232                "wordpress"
     233            ],
     234            "time": "2019-08-28T14:22:28+00:00"
    75235        },
    76236        {
     
    177337    "prefer-lowest": false,
    178338    "platform": {
    179       "php": ">=5.6"
     339        "php": ">=5.6"
    180340    },
    181341    "platform-dev": []
Note: See TracChangeset for help on using the changeset viewer.