Features/Php54

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(Created page with "{{admon/important | Comments and Explanations | The page source contains comments providing guidance to fill out each section. They are invisible when viewing this page. To rea...")
 
m (updated last touched date based on history)
 
(42 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{admon/important | Comments and Explanations | The page source contains comments providing guidance to fill out each section.  They are invisible when viewing this page.  To read it, choose the "edit" link.<br/> '''Copy the source to a ''new page'' before making changes!  DO NOT EDIT THIS TEMPLATE FOR YOUR FEATURE.'''}}
 
 
{{admon/important | Set a Page Watch| Make sure you click ''watch'' on your new page so that you are notified of changes to it by others, including the Feature Wrangler}}
 
 
{{admon/note | All sections of this template are required for review by FESCo.  If any sections are empty it will not be reviewed }}
 
 
 
 
<!-- All fields on this form are required to be accepted by FESCo.
 
<!-- All fields on this form are required to be accepted by FESCo.
 
  We also request that you maintain the same order of sections so that all of the feature pages are uniform.  -->
 
  We also request that you maintain the same order of sections so that all of the feature pages are uniform.  -->
Line 11: Line 4:
 
<!-- The actual name of your feature page should look something like: Features/YourFeatureName.  This keeps all features in the same namespace -->
 
<!-- The actual name of your feature page should look something like: Features/YourFeatureName.  This keeps all features in the same namespace -->
  
= Feature Name <!-- The name of your feature --> =
+
= PHP 5.4 <!-- The name of your feature --> =
  
PHP 5.4
 
  
 
== Summary ==
 
== Summary ==
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
 +
 +
To provide the latest PHP stack.
  
 
== Owner ==
 
== Owner ==
 
<!--This should link to your home wiki page so we know who you are-->
 
<!--This should link to your home wiki page so we know who you are-->
* Name: [[User:FASAcountName| Your Name]]
+
* Name: [[User:remi| Remi Collet]]
  
 
<!-- Include you email address that you can be reached should people want to contact you about helping with your feature, status is requested, or  technical issues need to be resolved-->
 
<!-- Include you email address that you can be reached should people want to contact you about helping with your feature, status is requested, or  technical issues need to be resolved-->
* Email: <your email address so we can contact you, invite you to meetings, etc.>
+
* Email: Fedora AT SPAMFREE FamilleCollet DOT com
  
 
== Current status ==
 
== Current status ==
 
* Targeted release: [[Releases/17 | Fedora 17 ]]  
 
* Targeted release: [[Releases/17 | Fedora 17 ]]  
* Last updated: (DATE)
+
* Last updated: 2012-03-02
* Percentage of completion: XX%
+
* Percentage of completion: 100%  
 +
 
  
 
<!-- CHANGE THE "FedoraVersion" TEMPLATES ABOVE TO PLAIN NUMBERS WHEN YOU COMPLETE YOUR PAGE. -->
 
<!-- CHANGE THE "FedoraVersion" TEMPLATES ABOVE TO PLAIN NUMBERS WHEN YOU COMPLETE YOUR PAGE. -->
Line 34: Line 29:
 
== Detailed Description ==
 
== Detailed Description ==
 
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
 
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
 +
Fedora provides PHP 5.3.x since version 12. ZTS module for apache is provided without any extension/module, this lack make it nearly unusable.
 +
 +
PHP '''5.4.0RC4''' was published for christmas, see [http://www.php.net/archive/2011.php#id2011-12-25-1 announce]. Finale version should be available before fedora 17.
 +
 +
PHP '''5.4.0RC5''' is released (Jan 7th)
 +
 +
PHP '''5.4.0RC6''' is released (Jan 24th)
 +
 +
PHP '''5.4.0RC7''' is released (Feb 3rd)
 +
 +
PHP '''5.4.0RC8''' is released (Feb 18)
 +
 +
PHP '''5.4.0 finale''' is released (Mar 01)
 +
 +
 +
* Update to PHP 5.4.0 (done)
 +
* Build ZTS extensions/modules (done)
 +
* Provide ZTS devel stuff in php-devel (done)
 +
* Update other extensions (mostly pecl) for latest ABI
 +
* Update PHP Guidelines
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
 +
 +
Provides the latest PHP version.
  
 
== Scope ==
 
== Scope ==
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 +
* Mass rebuild of all packages which requires php ABI, some will requires update or patch
 +
* Test of web applications
 +
  
 
== How To Test ==
 
== How To Test ==
Line 55: Line 75:
 
3. What are the expected results of those actions?
 
3. What are the expected results of those actions?
 
-->
 
-->
 +
 +
* test PHP web applications available in the repository
 +
* test PHP with apache in worker mode (ZTS modules)
  
 
== User Experience ==
 
== User Experience ==
 
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
 
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
 +
 +
* Web developper will get the latest upstream PHP version
  
 
== Dependencies ==
 
== Dependencies ==
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 +
 +
From repoquery --whatrequires 'php(zend-abi)'
 +
 +
* cups-php : version 1.5.0 + patch
 +
* graphviz-php : version 2.28.0 (need -fpermissive or patched swig: bug #770696)
 +
* ice-php : version 3.4.2 + patch
 +
* php-digidoc : version 0.3.0
 +
* php-eaccelerator upstream seems dead
 +
* php-facedetect : version 1.0.1 + patch
 +
* php-idn : version 1.2c with patch (upstream seems dead)
 +
* php-libpuzzle : version 0.11
 +
* php-libvirt : version 0.4.5 + patch
 +
* php-magickwand : version 1.0.9
 +
* php-mapi : version 7.0.3 + patch
 +
* php-pecl-apc : version 3.1.9 + svn snapshot
 +
* php-pecl-gearman : version 1.0.1
 +
* php-pecl-geoip : version 1.0.8
 +
* php-pecl-gmagick : version 1.0.10b1
 +
* php-pecl-igbinary : version 1.0.2 from git
 +
* php-pecl-imagick : version 3.1.0RC1
 +
* php-pecl-lzf : version 1.5.2
 +
* php-pecl-mailparse : version 2.1.5 + patch
 +
* php-pecl-memcache : version 3.0.6 + patch
 +
* php-pecl-memcached : version 2.0.0 from git
 +
* php-pecl-mongo : version 1.2.6
 +
* php-pecl-ncurses : version 1.0.1
 +
* php-pecl-oauth : version 1.2.2
 +
* php-pecl-radius : version 1.2.5
 +
* php-pecl-rrd : version 1.0.5
 +
* php-pecl-selinux : version 0.3.1
 +
* php-pecl-solr : version 1.0.2
 +
* php-pecl-sphinx : version 1.1.0
 +
* php-pecl-ssh2 : version 0.11.3
 +
* php-pecl-xdebug : version 2.2.0 from git
 +
* php-pecl-yaml : version 1.0.1
 +
* php-shout : version 0.9.2
 +
* rrdtool-php : version 1.4.4 + patch (or to be replaced by php-pecl-rrd)
 +
* syck-php : version 0.61 with patch (or switch to php-pecl-syck)
 +
* uuid-php : version 1.6.2 + patch
 +
* zorba-php : version 2.1.0 with patched swig
 +
 +
N.B. when version is given, this means package have been build/test against php 5.4. All patches are, of course, reported to each upstream.
  
 
== Contingency Plan ==
 
== Contingency Plan ==
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 +
 +
Work in a dedicated build target. Merge only when all is ok.
 +
 +
There is a low risk that finale version not released at f17 time, but in case, we'll ship RC5 (or greater).
  
 
== Documentation ==
 
== Documentation ==
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
*
+
* upstream [http://svn.php.net/viewvc/php/php-src/branches/PHP_5_4/NEWS?view=co NEWS]
 +
* upstream [http://svn.php.net/viewvc/php/php-src/branches/PHP_5_4/UPGRADING?view=co UPGRADING] (for web applications developer)
 +
* upstream [http://svn.php.net/viewvc/php/php-src/branches/PHP_5_4/UPGRADING.INTERNALS?view=co UPGRADING.INTERNALS] (for extension developer)
  
 
== Release Notes ==
 
== Release Notes ==
Line 73: Line 146:
 
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
 
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
 
*
 
*
 +
Fedora 17 includes version 5.4.0 of php. This includes a number of significant new features, including support for [http://www.php.net/traits Traits], and a minimal [http://www.php.net/manual/en/features.commandline.webserver.php Built-in web server] as well as a number of performance enhancements. For complete details see  [http://fr2.php.net/manual/en/migration54.php Migrating from PHP 5.3.x to PHP 5.4.x].
 +
 +
Fedora 17 now provides php extension to used with apache in worker mode (aka as ZTS extensions). This should be considered as experimental.
 +
 +
The eAccelerator project is dead, no upate, no compatible version, so php-eaccelerator have been removed from the repository. The APC is a good alternative as this opcode cache is maintained by the PHP team itself, so use the php-pecl-apc package.
  
 
== Comments and Discussion ==
 
== Comments and Discussion ==
* See [[Talk:Features/YourFeatureName]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
+
 
 +
The feature could be split if needed:
 +
* PHP 5.4.0
 +
* ZTS extensions
 +
 
 +
 
 +
See [[Talk:Features/Php54]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
  
  
[[Category:FeaturePageIncomplete]]
+
[[Category:FeatureAcceptedF17]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 13:50, 8 March 2012


Contents

[edit] PHP 5.4

[edit] Summary

To provide the latest PHP stack.

[edit] Owner

  • Email: Fedora AT SPAMFREE FamilleCollet DOT com

[edit] Current status

  • Targeted release: Fedora 17
  • Last updated: 2012-03-02
  • Percentage of completion: 100%


[edit] Detailed Description

Fedora provides PHP 5.3.x since version 12. ZTS module for apache is provided without any extension/module, this lack make it nearly unusable.

PHP 5.4.0RC4 was published for christmas, see announce. Finale version should be available before fedora 17.

PHP 5.4.0RC5 is released (Jan 7th)

PHP 5.4.0RC6 is released (Jan 24th)

PHP 5.4.0RC7 is released (Feb 3rd)

PHP 5.4.0RC8 is released (Feb 18)

PHP 5.4.0 finale is released (Mar 01)


  • Update to PHP 5.4.0 (done)
  • Build ZTS extensions/modules (done)
  • Provide ZTS devel stuff in php-devel (done)
  • Update other extensions (mostly pecl) for latest ABI
  • Update PHP Guidelines

[edit] Benefit to Fedora

Provides the latest PHP version.

[edit] Scope

  • Mass rebuild of all packages which requires php ABI, some will requires update or patch
  • Test of web applications


[edit] How To Test

  • test PHP web applications available in the repository
  • test PHP with apache in worker mode (ZTS modules)

[edit] User Experience

  • Web developper will get the latest upstream PHP version

[edit] Dependencies

From repoquery --whatrequires 'php(zend-abi)'

  • cups-php : version 1.5.0 + patch
  • graphviz-php : version 2.28.0 (need -fpermissive or patched swig: bug #770696)
  • ice-php : version 3.4.2 + patch
  • php-digidoc : version 0.3.0
  • php-eaccelerator upstream seems dead
  • php-facedetect : version 1.0.1 + patch
  • php-idn : version 1.2c with patch (upstream seems dead)
  • php-libpuzzle : version 0.11
  • php-libvirt : version 0.4.5 + patch
  • php-magickwand : version 1.0.9
  • php-mapi : version 7.0.3 + patch
  • php-pecl-apc : version 3.1.9 + svn snapshot
  • php-pecl-gearman : version 1.0.1
  • php-pecl-geoip : version 1.0.8
  • php-pecl-gmagick : version 1.0.10b1
  • php-pecl-igbinary : version 1.0.2 from git
  • php-pecl-imagick : version 3.1.0RC1
  • php-pecl-lzf : version 1.5.2
  • php-pecl-mailparse : version 2.1.5 + patch
  • php-pecl-memcache : version 3.0.6 + patch
  • php-pecl-memcached : version 2.0.0 from git
  • php-pecl-mongo : version 1.2.6
  • php-pecl-ncurses : version 1.0.1
  • php-pecl-oauth : version 1.2.2
  • php-pecl-radius : version 1.2.5
  • php-pecl-rrd : version 1.0.5
  • php-pecl-selinux : version 0.3.1
  • php-pecl-solr : version 1.0.2
  • php-pecl-sphinx : version 1.1.0
  • php-pecl-ssh2 : version 0.11.3
  • php-pecl-xdebug : version 2.2.0 from git
  • php-pecl-yaml : version 1.0.1
  • php-shout : version 0.9.2
  • rrdtool-php : version 1.4.4 + patch (or to be replaced by php-pecl-rrd)
  • syck-php : version 0.61 with patch (or switch to php-pecl-syck)
  • uuid-php : version 1.6.2 + patch
  • zorba-php : version 2.1.0 with patched swig

N.B. when version is given, this means package have been build/test against php 5.4. All patches are, of course, reported to each upstream.

[edit] Contingency Plan

Work in a dedicated build target. Merge only when all is ok.

There is a low risk that finale version not released at f17 time, but in case, we'll ship RC5 (or greater).

[edit] Documentation

[edit] Release Notes

Fedora 17 includes version 5.4.0 of php. This includes a number of significant new features, including support for Traits, and a minimal Built-in web server as well as a number of performance enhancements. For complete details see Migrating from PHP 5.3.x to PHP 5.4.x.

Fedora 17 now provides php extension to used with apache in worker mode (aka as ZTS extensions). This should be considered as experimental.

The eAccelerator project is dead, no upate, no compatible version, so php-eaccelerator have been removed from the repository. The APC is a good alternative as this opcode cache is maintained by the PHP team itself, so use the php-pecl-apc package.

[edit] Comments and Discussion

The feature could be split if needed:

  • PHP 5.4.0
  • ZTS extensions


See Talk:Features/Php54