From Fedora Project Wiki
 
(22 intermediate revisions by 2 users not shown)
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-07-11
* Last updated: 2010-09-07
* Percentage of completion: 20%
* Percentage of completion: 100%


== Detailed Description ==
== Detailed Description ==
Line 29: Line 29:


* [https://admin.fedoraproject.org/pkgdb/acls/name/boost Boost package in Fedora]
* [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.
Line 71: 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>
openvrml
aqsis
pingus
asc
hugin
avogadro
barry
bastet
bmpx
CGAL
chess
conexus
conexus
player
dchroot
mapnik
aqsis
qpidc
deluge
deluge
rcsslogplayer
easystroke
Miro
enblend
asc
esperanza
fuse-encfs
fusecommon
1:fife
glob2
glob2
vegastrike
glom
gnash
gnash
chess
gnote
pyexiv2
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
linkage
qbittorent
barry
qpidc
QuantLib
rb_libtorrent
rcsserver3d
rcsslogplayer
rcssserver
rcssserver
QuantLib
referencer
rmol
schroot
simspark
soci
source-highlight
spring
torium
twinkle
urge
usrp
vegastrike
vigra-python
wesnoth
wesnoth
mkvtoolnix
widelands
rb_libtorrent
wp_tray
bmpx
xmms2
xmms2
wp_tray
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
HippoDraw
</pre>
rcsserver3d


== Contingency Plan ==
== Contingency Plan ==
Line 115: Line 164:
== 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/1_41_0
* 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 122: 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.44.0 Release Notes (as of June, 2010, not yet delivered)
* Boost 1.44.0 Release Notes


http://www.boost.org/users/history/version_1_44_0
http://www.boost.org/users/history/version_1_44_0
Line 128: Line 177:
* Boost 1.43.0 Release Notes
* Boost 1.43.0 Release Notes


http://www.boost.org/users/download/version_1_43_0
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 ==
== Comments and Discussion ==
* See [[Talk:Features/F14Boost144]]
* 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)
* 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]





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

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

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