In my work to port PaperClips to Nebula I got bugzilla permissions so I
could manage version numbers for my components in Bugzilla. However it
turns out that Bugzilla versions apply to the entire project (Nebula as
a whole), not individual components.
I personally find versioning to be really important for bug /
enhancement tracking. It's been invaluable while working on
DataBinding to find old bug reports and do planning in Mylyn.
It would be nice if we could reach a consensus on how to version our
components so that nobody gets their toes stepped on. Here are a few
couple options:
- Don't use them (status quo). Projects track versions, bug fixes
and enhancements somewhere outside Bugzilla. The benefit is that every
component owner can manage their versions however they like. The
drawback is that bugzilla cannot be queried as easily according to
versions
- Standardize versions/milestones across all Nebula components,
possibly using a year/month or year/quarter scheme e.g. "2009-10" or
"2009-Q4". The benefit is avoiding an explosion of versions; the
drawback is that component owners have less flexibility to version
their components and everybody has to plan releases at the same time.
Also the version numbers in Bugzilla no longer match bundle versions.
- Let each component define their own versions, but require that
the version names be prepended with the component name e.g. "RadioGroup
0.1", "PaperClips 2.0M1." The benefit is that component owners can
track versions as appropriate for the component (preferably according
to bundle version). The drawback is having an explosion of version
numbers--the more components, the bigger the explosion of versions.
Which option would each of you prefer?
Matthew Hall
|