Hello all,
I've been trying to figure the best way to handle this situation for the better part
of two days... and so I figured I'd bring it on list and hopefully I can clarify this
all. I have several projects that relate to this question, however I will reference
'cement' as an example. Basically, cement is a CLI Application Framework for
Python [1]. I am also the upstream maintainer, so I have the ability to modify upstream
or downstream. Currently, cement consists of three separate sources:
cement
cement.devtools
cement.test
All three pieces follow each release meaning, when 0.8.12 (current stable) was released...
new tarbals were released for all three. The reason for separate tarbals is primarily for
maintaining releases via PyPi [2]. I need all three pieces to be separate so that users
can 'easy_install cement', without pulling in a dozen dependencies for
cement.devtools or cement.test. I don't have the luxury of creating
'subpackages' in PyPi, so I have to break up the sources.
That said, in the Fedora world... it is a bit excessive to maintain three separate RPM
packages (for all Fedora/EPEL releases)... when all three packages are related and could
easily role up under a single package, with subpackages. I have the same issue with
'rosendale' [3] which is/will be a set of plugins for applications built on
cement. The same situation exists, in PyPi I need separate source tarbals because users
need to be able to 'easy_install rosendale.some_plugin'. In Fedora world,
maintaining a single package set for 'rosendale' would be ideal and make more
sense because I can do sub packages for each plugin and not have to maintain 20 different
package sets.
What I would like to see is if this type of situation would lend itself to making an
exception to the FPG regarding 'one source per package'. I assume the section
'Bundling of multiple projects' [4] is relevant, though it is pretty vague. I
guess what I'm looking for is for someone with more time in the community to give some
advice on this situation. Ideally, I would like to be able to maintain a single package
set for say 'cement', but with Source0 (cement), Source1 (cement.devtools),
Source2 (cement.test).
Or would it be recommended to have a separate tarbal like
'cement-all-0.8.12.tar.gz' which would include all parts of the project, and use
that as Source0?
Thanks for your time.
References:
[1]
http://builtoncement.org
[2]
http://pypi.python.org
[
3]http://builtoncement.org/rosendale/1.0/doc/
[4]
http://fedoraproject.org/wiki/PackagingGuidelines#Bundling_of_multiple_pr...
---
derks