From Fedora Project Wiki

< SIGs‎ | PHP

(Created page with "= PHP Review Tips = == Fedora Review == * '''phpcompatinfo''' report analysis is automatically run during '''fedora-review''' <pre> yum/dnf install phpcompatinfo fedora-rev...")
 
No edit summary
Line 10: Line 10:


Notices:
Notices:
* phpcompatinfo is run against the full sources tree. It can be usefull to run it twice. Once against sources directory (src, lib, ...) for runtime requirement, and once against tests directory for buildtime requirement.
* phpcompatinfo is run against the full sources tree. It can be usefull to run it twice:
* run it against sources directory (src, lib, ...) for runtime requirement
* run it against tests directory for buildtime requirement.
 
== About Guidelines ==
 
===  Extensions Requires ===
 
Explanation: the package layout is not reliable, as it have change and will probably change again.
* a static extension (in the engine) can be build as a shared extension and move to another package (ex: gmp moved to php-gmp).
* a shared extension can move (ex: shmop moved to php-process in 5.5)
* a extension can move from php to pecl when deprecated.
* a pecl extension can be merge in php when considered as famous and stable.
 
So all needed extensions MUST be required (use php-<extname>)
* Core and standard are not extensions and are always there. No need to requires them (and they are not provided)
* extensions don't have version, so never use: requires: php-foo > 5.5 (use Requires: php-foo, php(language) > 5.5)
 


[[Category:PHP]]
[[Category:PHP]]

Revision as of 14:17, 25 June 2015

PHP Review Tips

Fedora Review

  • phpcompatinfo report analysis is automatically run during fedora-review
yum/dnf install phpcompatinfo fedora-review

Notices:

  • phpcompatinfo is run against the full sources tree. It can be usefull to run it twice:
  • run it against sources directory (src, lib, ...) for runtime requirement
  • run it against tests directory for buildtime requirement.

About Guidelines

Extensions Requires

Explanation: the package layout is not reliable, as it have change and will probably change again.

  • a static extension (in the engine) can be build as a shared extension and move to another package (ex: gmp moved to php-gmp).
  • a shared extension can move (ex: shmop moved to php-process in 5.5)
  • a extension can move from php to pecl when deprecated.
  • a pecl extension can be merge in php when considered as famous and stable.

So all needed extensions MUST be required (use php-<extname>)

  • Core and standard are not extensions and are always there. No need to requires them (and they are not provided)
  • extensions don't have version, so never use: requires: php-foo > 5.5 (use Requires: php-foo, php(language) > 5.5)