https://github.com/mlocati/concrete5-since-tagger
Compare data between concrete5 versions and manages since PHPDoc tags
https://github.com/mlocati/concrete5-since-tagger
Last synced: about 2 months ago
JSON representation
Compare data between concrete5 versions and manages since PHPDoc tags
- Host: GitHub
- URL: https://github.com/mlocati/concrete5-since-tagger
- Owner: mlocati
- License: mit
- Created: 2019-08-14T14:42:05.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-09-30T15:27:21.000Z (over 5 years ago)
- Last Synced: 2025-02-05T08:37:14.450Z (3 months ago)
- Language: PHP
- Homepage:
- Size: 5.68 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# concrete5 `@since` tagger
When developing for multiple concrete5 versions, developers need to know when a class/interface/method/constant/... has been introduces.
The [`@since`](https://docs.phpdoc.org/references/phpdoc/tags/since.html) phpdoc tag is the standard way to document this.
The process implement requires these steps:
1. analyze *all* the concrete5 versions (starting from 5.7.0), extracting the defined classes/interfaces/methods/constants/...
This can be done with the `./bin/concrete5-since-tagger update` CLI command (to analyze all the concrete5 versions) and/or with the `./bin/concrete5-since-tagger parse ` CLI command (to analyze/reanalyze a specific concrete5 version)
2. patching the corrent development version of concrete5, comparing it with the previously parsed versions.
This can be done with the `./bin/concrete5-since-tagger patch ` CLI command
## Requirements
1. A MySQL instance
2. PHP 7.2+ *and* PHP 5.x (PHP 5.x is required for the analysis process)
3. The `unzip` CLI command## Setup
1. copy `.env.dist` to `.env` and personalize it
2. run `composer install`
3. run `./bin/concrete5-since-tagger orm:schema-tool:create` to intialize the database## Typical usage
```sh
# Parse all the concrete5 versions
./bin/concrete5-since-tagger update# Patch the development version
./bin/concrete5-since-tagger patch /path/to/concrete5
```## Ready-to-use data
The `update` command is a really time-consuming process: it needs to download and parse all the concrete5 releases.
If you don't want to do that, you can pre-populate the database with [this SQL dump](https://raw.githubusercontent.com/mlocati/concrete5-since-tagger/data/sql-dump.7z).