Denisarnaud (talk | contribs) |
Denisarnaud (talk | contribs) m (→Current status) |
||
(33 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
== Summary == | == Summary == | ||
This feature brings Boost 1.44.0 to Fedora 14. | |||
== Owner == | == Owner == | ||
Line 14: | Line 14: | ||
== Current status == | == Current status == | ||
* Targeted release: [[Releases/14 |Fedora 14]] | * Targeted release: [[Releases/14/Schedule |Fedora 14]] (and its [[Releases/14/FeatureList |Feature List]]) | ||
* Last updated: 2010- | * Last updated: 2010-09-07 | ||
* Percentage of completion: | * Percentage of completion: 100% | ||
== Detailed Description == | == Detailed Description == | ||
Line 28: | Line 28: | ||
Some background: | Some background: | ||
* [https://admin.fedoraproject.org/pkgdb/acls/name/boost Boost package in Fedora] | |||
* [http://koji.fedoraproject.org/koji/packageinfo?packageID=1074 Boost build status in Koji] | |||
* [[Features/F13Boost141 |Fedora 13 Boost-1.41 Feature]] | * [[Features/F13Boost141 |Fedora 13 Boost-1.41 Feature]] | ||
* [http://www.boost.org Boost] ships with an ad-hoc build system named [http://www.boost.org/doc/libs/1_41_0/more/getting_started/unix-variants.html#get-bjam BJam]. The Boost development community is exploring alternate build and source code control approaches, including the use of more standard build and release management tools like git and CMake. Which, frankly, the Fedora boost maintainers wish to support. Fortunately for us, a team of developers had worked for over a year on a more standard way to build Boost, thanks to the [http://www.cmake.org CMake tool], namely [https://svn.boost.org/trac/boost/wiki/CMake Boost-CMake]. However, the activity of that group has stalled since December 2009. Some members of the group would help any initiative, but nobody has taken the lead yet. | * [http://www.boost.org Boost] ships with an ad-hoc build system named [http://www.boost.org/doc/libs/1_41_0/more/getting_started/unix-variants.html#get-bjam BJam]. The Boost development community is exploring alternate build and source code control approaches, including the use of more standard build and release management tools like git and CMake. Which, frankly, the Fedora boost maintainers wish to support. Fortunately for us, a team of developers had worked for over a year on a more standard way to build Boost, thanks to the [http://www.cmake.org CMake tool], namely [https://svn.boost.org/trac/boost/wiki/CMake Boost-CMake]. However, the activity of that group has stalled since December 2009. Some members of the group would help any initiative, but nobody has taken the lead yet. | ||
Technical details are available in a [https://bugzilla.redhat.com/show_bug.cgi?id= | Technical details are available in a [https://bugzilla.redhat.com/show_bug.cgi?id=607615 Bugzilla-filed (#607615)] enhancement request. | ||
== Benefit to Fedora == | == Benefit to Fedora == | ||
Line 57: | Line 59: | ||
* No special hardware is needed. | * No special hardware is needed. | ||
* Testing of the Boost packages themselves requires the host system to have the boost-test package installed. Testing can then be enabled at package build time by passing <tt>--with tests</tt>. Note that that testing phase should be done only once per type of architecture and distribution version. | * Testing of the Boost packages themselves requires the host system to have the boost-test package installed. Testing can then be enabled at package build time by passing <tt>--with tests</tt>. Note that that testing phase should be done only once per type of architecture and distribution version. | ||
* Once the Boost packages have been built and checked according to the previous step, testing simply consists in installing them on Fedora | * Once the Boost packages have been built and checked according to the previous step, testing simply consists in installing them on Fedora 14 and checking that it does not break any other package dependency. | ||
* Expected results: all the packages depending on Boost (for instance, gnash, pingus, kdeedu or k3d) should work properly on Fedora | * Expected results: all the packages depending on Boost (for instance, gnash, pingus, kdeedu or k3d) should work properly on Fedora 14. | ||
== 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. --> | ||
Expected to remain largely the same. | Expected to remain largely the same. | ||
== Dependencies == | == Dependencies == | ||
Line 72: | Line 72: | ||
There are a large number of dependencies for the boost package in fedora. Here is a non-exhaustive list. | There are a large number of dependencies for the boost package in fedora. Here is a non-exhaustive list. | ||
<pre> | |||
aqsis | |||
asc | |||
avogadro | |||
barry | |||
bastet | |||
bmpx | |||
CGAL | |||
chess | |||
conexus | conexus | ||
dchroot | |||
deluge | deluge | ||
easystroke | |||
enblend | |||
esperanza | |||
fuse-encfs | |||
fusecommon | |||
1:fife | |||
glob2 | glob2 | ||
glom | |||
gnash | gnash | ||
gnote | |||
gnuradio | |||
gpsdrive | |||
HippoDraw | |||
hugin | |||
libpst-python | |||
LuxRender | |||
lyx | |||
k3d | k3d | ||
kdeedu | kdeedu | ||
linkage | |||
mapnik | |||
Miro | |||
mkvtoolnix | |||
openvrml | |||
pingus | |||
player | |||
pokerth | |||
pyexiv2 | |||
pymilia | |||
python-gnash | |||
python-polybori | |||
python-tag | python-tag | ||
qbittorent | |||
qpidc | |||
QuantLib | |||
rb_libtorrent | |||
rcsserver3d | |||
rcsslogplayer | |||
rcssserver | rcssserver | ||
referencer | |||
rmol | |||
schroot | |||
simspark | |||
soci | |||
source-highlight | |||
spring | |||
torium | |||
twinkle | |||
urge | |||
usrp | |||
vegastrike | |||
vigra-python | |||
wesnoth | wesnoth | ||
widelands | |||
wp_tray | |||
xmms2 | xmms2 | ||
xsd | |||
</pre> | |||
Rebuilt for f14, +24 hours | |||
<pre> | |||
asc | |||
chess | |||
deluge | |||
fuse-encfs | fuse-encfs | ||
gnash | |||
mapnik | |||
pingus | |||
python-tag | |||
referencer | referencer | ||
source-highlight | source-highlight | ||
</pre> | |||
== 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. --> | ||
Non-completion will result in the | Non-completion will result in the F13 boost version, 1.41.0, being used in F14. | ||
== 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. --> | ||
* Boost: http://www.boost.org/doc/libs/ | * Boost: http://www.boost.org/doc/libs/1_44_0 | ||
* Boost-CMake: https://svn.boost.org/trac/boost/wiki/CMake | * Boost-CMake: https://svn.boost.org/trac/boost/wiki/CMake | ||
Line 123: | Line 171: | ||
<!-- 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. --> | ||
* Boost 1. | * Boost 1.44.0 Release Notes | ||
http://www.boost.org/users/history/version_1_44_0 | |||
* Boost 1.43.0 Release Notes | |||
http://www.boost.org/users/history/ | http://www.boost.org/users/history/version_1_43_0 | ||
* Boost 1. | * Boost 1.42.0 Release Notes | ||
http://www.boost.org/users/ | http://www.boost.org/users/history/version_1_42_0 | ||
== Comments and Discussion == | == Comments and Discussion == | ||
* See [[Talk:Features/F14Boost144]] | * See [[Talk:Features/F14Boost144]] | ||
* BZ: https://bugzilla.redhat.com/show_bug.cgi?id=529563 | * BZ: https://bugzilla.redhat.com/show_bug.cgi?id=607615 (for Fedora 13 and Boost-1.41: https://bugzilla.redhat.com/show_bug.cgi?id=529563) | ||
* Status | |||
** Boost-1.44.0-1, corresponding to the final 1.44.0 version of Boost, has been successfully built: | |||
*** Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=2416683 | |||
*** [https://admin.fedoraproject.org/updates/boost-1.44.0-1.fc14 F14]: http://koji.fedoraproject.org/koji/taskinfo?taskID=2416759 => http://kojipkgs.fedoraproject.org/packages/boost/1.44.0/1.fc14/ | |||
*** An alignment issue occurred, when packages built with boost-1.44.0-0.5 were running with newer boost-1.44.0-1 package. That alignment issue provoked segmentation fault, as witnessed for instance in hugin/nona (https://bugzilla.redhat.com/show_bug.cgi?id=624937). The solution was to let boost-1.44.0-1 slip through to the Fedora package repository and mirrors, and to rebuild the packages dependent on it. | |||
** Historical context: | |||
*** All the Boost-dependent packages had been successfully rebuilt with a Boost tar-ball afar from pristine final 1.44.0 release: boost-1.44.0-0.5 | |||
*** The final version of Boost 1.44.0 has been built for the first time in boost-1.44.0-0.6 (rejected/unpushed from the Fedora package repository thanks to the segmentation fault issue), and then in boost-1.44.0-1. That latter has been pushed into stable for F14 (and is the current package on Rawhide). | |||
*** [http://koji.fedoraproject.org/koji/taskinfo?taskID=2354303 Koji build task for F14] | |||
*** [https://admin.fedoraproject.org/updates/boost-1.44.0-0.5.fc14 Bodhi package DB update for F14] | |||
[[Category: | [[Category:FeatureAcceptedF14]] | ||
<!-- 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 19:52, 7 September 2010
Fedora 14 Boost 1.44 Uplift
Summary
This feature brings Boost 1.44.0 to Fedora 14.
Owner
- Name: Denis Arnaud
- Email: denis.arnaud_fedora@m4x.org
Current status
- Targeted release: Fedora 14 (and its Feature List)
- Last updated: 2010-09-07
- Percentage of completion: 100%
Detailed Description
That feature aims at synchronising the top of the Fedora tree with the current Boost upstream release. The current Fedora release is boost-1.41.0, folded into devel 2009-11-17.
As of Fedora 13, the canonical sources used for the package switched from the official Boost release (with BJam build) to an alternate repository (with CMake build, for boost-1.41.0). That alternate repository seems to be no longer actively maintained.
The challenge is therefore to go on packaging with CMake. If that fails, Fedora packaging will have to switch back to BJam build. In case it is successful, however, Fedora 14 should ship with Boost 1.44.
Some background:
- Boost package in Fedora
- Boost build status in Koji
- Fedora 13 Boost-1.41 Feature
- Boost ships with an ad-hoc build system named BJam. The Boost development community is exploring alternate build and source code control approaches, including the use of more standard build and release management tools like git and CMake. Which, frankly, the Fedora boost maintainers wish to support. Fortunately for us, a team of developers had worked for over a year on a more standard way to build Boost, thanks to the CMake tool, namely Boost-CMake. However, the activity of that group has stalled since December 2009. Some members of the group would help any initiative, but nobody has taken the lead yet.
Technical details are available in a Bugzilla-filed (#607615) enhancement request.
Benefit to Fedora
Syncing with upstream keeps Fedora current. This is part of regular package maintenance.
Scope
Upstream sources for Boost releases are evaluated, along with alternate repositories. One is selected, packaged according to Fedora package conventions and cognizant of existing package practices, tested, evaluated, and then built in Koji. This is then pushed to fedora devel. Dependencies are rebuilt. The unicorns are once again happy, and can go back to drinking champagne and complaining about slow build times.
How To Test
- No special hardware is needed.
- Testing of the Boost packages themselves requires the host system to have the boost-test package installed. Testing can then be enabled at package build time by passing --with tests. Note that that testing phase should be done only once per type of architecture and distribution version.
- Once the Boost packages have been built and checked according to the previous step, testing simply consists in installing them on Fedora 14 and checking that it does not break any other package dependency.
- Expected results: all the packages depending on Boost (for instance, gnash, pingus, kdeedu or k3d) should work properly on Fedora 14.
User Experience
Expected to remain largely the same.
Dependencies
There are a large number of dependencies for the boost package in fedora. Here is a non-exhaustive list.
aqsis asc avogadro barry bastet bmpx CGAL chess conexus dchroot deluge easystroke enblend esperanza fuse-encfs fusecommon 1:fife glob2 glom gnash gnote gnuradio gpsdrive HippoDraw hugin libpst-python LuxRender lyx k3d kdeedu linkage mapnik Miro mkvtoolnix openvrml pingus player pokerth pyexiv2 pymilia python-gnash python-polybori python-tag qbittorent qpidc QuantLib rb_libtorrent rcsserver3d rcsslogplayer rcssserver referencer rmol schroot simspark soci source-highlight spring torium twinkle urge usrp vegastrike vigra-python wesnoth widelands wp_tray xmms2 xsd
Rebuilt for f14, +24 hours
asc chess deluge fuse-encfs gnash mapnik pingus python-tag referencer source-highlight
Contingency Plan
Non-completion will result in the F13 boost version, 1.41.0, being used in F14.
Documentation
- Boost: http://www.boost.org/doc/libs/1_44_0
- Boost-CMake: https://svn.boost.org/trac/boost/wiki/CMake
Release Notes
- Boost 1.44.0 Release Notes
http://www.boost.org/users/history/version_1_44_0
- Boost 1.43.0 Release Notes
http://www.boost.org/users/history/version_1_43_0
- Boost 1.42.0 Release Notes
http://www.boost.org/users/history/version_1_42_0
Comments and Discussion
- See Talk:Features/F14Boost144
- BZ: https://bugzilla.redhat.com/show_bug.cgi?id=607615 (for Fedora 13 and Boost-1.41: https://bugzilla.redhat.com/show_bug.cgi?id=529563)
- Status
- Boost-1.44.0-1, corresponding to the final 1.44.0 version of Boost, has been successfully built:
- Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=2416683
- F14: http://koji.fedoraproject.org/koji/taskinfo?taskID=2416759 => http://kojipkgs.fedoraproject.org/packages/boost/1.44.0/1.fc14/
- An alignment issue occurred, when packages built with boost-1.44.0-0.5 were running with newer boost-1.44.0-1 package. That alignment issue provoked segmentation fault, as witnessed for instance in hugin/nona (https://bugzilla.redhat.com/show_bug.cgi?id=624937). The solution was to let boost-1.44.0-1 slip through to the Fedora package repository and mirrors, and to rebuild the packages dependent on it.
- Historical context:
- All the Boost-dependent packages had been successfully rebuilt with a Boost tar-ball afar from pristine final 1.44.0 release: boost-1.44.0-0.5
- The final version of Boost 1.44.0 has been built for the first time in boost-1.44.0-0.6 (rejected/unpushed from the Fedora package repository thanks to the segmentation fault issue), and then in boost-1.44.0-1. That latter has been pushed into stable for F14 (and is the current package on Rawhide).
- Koji build task for F14
- Bodhi package DB update for F14
- Boost-1.44.0-1, corresponding to the final 1.44.0 version of Boost, has been successfully built: