{"id":13636301,"url":"https://github.com/php-parallel-lint/PHP-Parallel-Lint","last_synced_at":"2025-04-19T07:35:30.694Z","repository":{"id":40623522,"uuid":"239961158","full_name":"php-parallel-lint/PHP-Parallel-Lint","owner":"php-parallel-lint","description":"This tool check syntax of PHP files faster than serial check with fancier output.","archived":false,"fork":false,"pushed_at":"2024-11-23T12:13:16.000Z","size":633,"stargazers_count":300,"open_issues_count":26,"forks_count":23,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-03-31T15:13:06.898Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"grogy/PHP-Parallel-Lint","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/php-parallel-lint.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-12T08:26:35.000Z","updated_at":"2025-03-13T18:33:03.000Z","dependencies_parsed_at":"2023-01-30T23:45:20.647Z","dependency_job_id":"bf9e68be-8ee4-4675-b3ae-054073e2c00c","html_url":"https://github.com/php-parallel-lint/PHP-Parallel-Lint","commit_stats":{"total_commits":459,"total_committers":50,"mean_commits":9.18,"dds":0.644880174291939,"last_synced_commit":"0c2706086ac36dce31967cb36062ff8915fe03f7"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-parallel-lint%2FPHP-Parallel-Lint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-parallel-lint%2FPHP-Parallel-Lint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-parallel-lint%2FPHP-Parallel-Lint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-parallel-lint%2FPHP-Parallel-Lint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/php-parallel-lint","download_url":"https://codeload.github.com/php-parallel-lint/PHP-Parallel-Lint/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248365953,"owners_count":21091875,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T00:00:59.662Z","updated_at":"2025-04-19T07:35:30.687Z","avatar_url":"https://github.com/php-parallel-lint.png","language":"PHP","readme":"# PHP Parallel Lint\n\n[![Downloads this Month](https://img.shields.io/packagist/dm/php-parallel-lint/php-parallel-lint.svg)](https://packagist.org/packages/php-parallel-lint/php-parallel-lint)\n[![Build Status](https://github.com/php-parallel-lint/PHP-Parallel-Lint/actions/workflows/test.yml/badge.svg)](https://github.com/php-parallel-lint/PHP-Parallel-Lint/actions/workflows/test.yml)\n[![License](https://poser.pugx.org/php-parallel-lint/php-parallel-lint/license.svg)](https://packagist.org/packages/php-parallel-lint/php-parallel-lint)\n\nThis application checks the syntax of PHP files in parallel.\nIt can output in plain text, colored text, json and checksyntax formats.\nAdditionally `blame` can be used to show commits that introduced the breakage.\n\nRunning parallel jobs in PHP is inspired by Nette framework tests.\n\nThe application is officially supported for use with PHP 5.3 to 8.4.\n\n## Table of contents\n\n1. [Installation](#installation)\n2. [Example output](#example-output)\n3. [History](#history)\n4. [Command line options](#command-line-options)\n5. [Recommended excludes for Symfony framework](#recommended-excludes-for-symfony-framework)\n6. [Excluding files from a scan based on the PHP version used](#excluding-files-from-a-scan-based-on-the-php-version-used)\n7. [How to upgrade](#how-to-upgrade)\n\n## Installation\n\nInstall with `composer` as development dependency:\n\n    composer require --dev php-parallel-lint/php-parallel-lint\n\nAlternatively you can install as a standalone `composer` project:\n\n    composer create-project php-parallel-lint/php-parallel-lint /path/to/folder/php-parallel-lint --no-dev\n    /path/to/folder/php-parallel-lint/parallel-lint # running tool\n\nFor colored output, install the suggested package `php-parallel-lint/php-console-highlighter`:\n\n    composer require --dev php-parallel-lint/php-console-highlighter\n\nSince v1.3.0, a PHAR file is also made available for each release.\nThis PHAR file is published as an asset for each release and can be found on the [Releases](https://github.com/php-parallel-lint/PHP-Parallel-Lint/releases) page.\n\n## Example output\n\n![Example use of tool with error](/doc/use-error.png?raw=true \"Example use of tool with error\")\n\n\n## History\n\nThis project was originally created by [@JakubOnderka] and released as\n[jakub-onderka/php-parallel-lint].\n\nSince then, Jakub has moved on to other interests and as of January 2020, the\nsecond most active maintainer [@grogy] has taken over maintenance of the project\nand given the project - and related dependencies - a new home in the PHP\nParallel Lint organisation.\n\nIt is strongly recommended for existing users of the (unmaintained)\n[jakub-onderka/php-parallel-lint] package to switch their dependency to\n[php-parallel-lint/php-parallel-lint], see [How to upgrade](#how-to-upgrade) below.\n\n[php-parallel-lint/php-parallel-lint]: https://github.com/php-parallel-lint/PHP-Parallel-Lint\n[grogy/php-parallel-lint]: https://github.com/grogy/PHP-Parallel-Lint\n[jakub-onderka/php-parallel-lint]: https://github.com/JakubOnderka/PHP-Parallel-Lint\n[@JakubOnderka]: https://github.com/JakubOnderka\n[@grogy]: https://github.com/grogy\n\n## Command line options\n\n- `-p \u003cphp\u003e`                Specify PHP-CGI executable to run (default: 'php').\n- `-s`, `--short`           Set short_open_tag to On (default: Off).\n- `-a`, `--asp`             Set asp_tags to On (default: Off).\n- `-e \u003cext\u003e`                Check only files with selected extensions separated by comma. (default: php,php3,php4,php5,phtml,phpt)\n- `-j \u003cnum\u003e`                Run \u003cnum\u003e jobs in parallel (default: 10).\n- `--exclude`               Exclude a file or directory. If you want to exclude multiple items, use multiple exclude parameters.\n- `--colors`                Enable colors in console output. (disables auto detection of color support)\n- `--no-colors`             Disable colors in console output.\n- `--no-progress`           Disable progress in console output.\n- `--checkstyle`            Output results as Checkstyle XML.\n- `--json`                  Output results as JSON string (requires PHP 5.4).\n- `--gitlab`                Output results for the GitLab Code Quality Widget (requires PHP 5.4), see more in [Code Quality](https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html) documentation..\n- `--blame`                 Try to show git blame for row with error.\n- `--git \u003cgit\u003e`             Path to Git executable to show blame message (default: 'git').\n- `--stdin`                 Load files and folder to test from standard input.\n- `--ignore-fails`          Ignore failed tests.\n- `--show-deprecated`       Show deprecations (default: Off).\n- `--syntax-error-callback` File with syntax error callback for ability to modify error, see more in [example](doc/syntax-error-callback.md).\n- `-h`, `--help`            Print this help.\n- `-V`, `--version`         Display the application version\n\n\n## Recommended excludes for Symfony framework\n\nTo run from the command line:\n\n    vendor/bin/parallel-lint --exclude .git --exclude app --exclude vendor .\n\n\n## Excluding files from a scan based on the PHP version used\n\nSometimes a particular file in a project may not comply with the project-wide minimum PHP version, like a file which is conditionally included in the project and contains PHP syntax which needs a higher PHP version to run.\n\nThis can make it complicated to run Parallel Lint in a CI context, as the `exclude`s used in the command would have to be adjusted based on the PHP version on which the scan is being run.\n\nPHP Parallel Lint offers a straight-forward way around this, as files can define their own minimum PHP version like so:\n```php\n\u003c?php // lint \u003e= 7.4\n\n// Code which contains PHP 7.4 syntax.\n```\n\nWith this comment in place, the file will be automatically skipped when PHP Parallel Lint is run on a PHP version lower than PHP 7.4.\n\nNote: The `// lint \u003e= 7.4` comment has to be only the first line of the file and must directly follow the PHP open tag.\n\n\n## How to upgrade\n\nAre you using the `jakub-onderka/php-parallel-lint` package? You can switch to `php-parallel-lint/php-parallel-lint` using:\n\n    composer remove --dev jakub-onderka/php-parallel-lint\n    composer require --dev php-parallel-lint/php-parallel-lint\n","funding_links":[],"categories":["Uncategorized","Programming Languages"],"sub_categories":["Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-parallel-lint%2FPHP-Parallel-Lint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphp-parallel-lint%2FPHP-Parallel-Lint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-parallel-lint%2FPHP-Parallel-Lint/lists"}