Hi All,
General comments on features developed in branches:
The separation of trunk from feature developed provides many advantages.
It will allow those who really want a more esoteric feature that hasn't
been merged into a release 'roll their own' with understanding that the
code remains unsupported by the project.
Do need to have a strategy for resolving conflicts if more than one
feature has been agreed to be merged at the same time or do we simply
allow one feature in at time and, other features will need to update
thier code to work with the new core before they can be merged?
On 19/12/12 10:40, Rubén Pérez wrote:
- Is the initial commiter responsible if later on we notice that his
code breaks something?
Absolutely, in my opinion, but it also depends on what one understands
by "later on" and if the break comes from a bug in the code submitted or
a more complex interaction with the surrounding code. Also, somebody
recently pointed out to me that the Agile manifest deprecates anything
by the lines of "this area is So-and-So's part" or "I don't do this area
of the code; it's John Doe's thing". While I see the difficulty of every
developer in Matterhorn knowing *every* part of the code, I also see the
advantages or developers being, so to speak "acquainted" with many parts
of the code.
Strongly agree with this, those developing new features must be
responsible for making it work with the core. This includes any
necessary changes to the core code. Maybe we need a period of probation
after a feature has been added where the original maitainers are
resonsible for fixing any related issues. After this period the feature
is fully adopted by the project.
- What happens with probably small tasks that are not bugs? For
example upgrading the Atom Feed to the 1.0 version (what I hope will
not be too much to do)? Or adding new unit or integration tests...
I'd say upgrades are features and should be addressed accordingly. One
of our problems is that developers sometimes focus mostly in new
features and completely miss maintaining the existing ones, or keeping
them up-to-date. I say "developers" but I'm including myself in the lot,
of course. But upgrading things may potentially break some stuff here
and there, and I don't see a good idea doing it when we are in the
middle of a QA phase (in general).
Re. tests, I'd say that they can be added at any time of the process,
both in "development time" and QA time. Perhaps in QA one will discover
some aspect of a certain part of the code which remains untested and can
create a test for it.
Tasks where existing functionality is being replaced with a 'better'
version of the code or way of doing things should probably be just
discussed on list when it's proposed. I don't see a need to vote on it's
inclusion when it's ready. It should be developed in it's own branch and
go through a proper code review before being merged into trunk.
Release strategies:
Many users have expressed the desire to have more frequent minor point
releases. ie 1.4.1, 1.4.2 etc. This is desirable though for those of us
doing very large deployments the opportunity to peform updates are
possibly going to be 2 or 3 times a year. To allow end users to better
plan their update strategies the timing of these minor releases should
be decided ahead of time so fixes have to make the release deadline not
the other way around.
Spawning maintence branches for these releases would mean that if a
critcal issue is found immediately after release, and can be quickly
fixed it's can be easily applied to for the 1.4.2 release and made
available as 1.4.2.1
We should also consider whether anything other than a trivial fix should
be worked on in a branch. As any partially completed fixes in trunk
could stall the next release.
Regards
James
--
------------------------------------------------------------------------
James S. Perrin
Media Technologies Team
Devonshire House, University Precinct
The University of Manchester
Oxford Road, Manchester, M13 9PL
t: +44 (0) 161 275 6945
e: [email protected]
w: www.manchester.ac.uk/researchcomputing
------------------------------------------------------------------------
"The test of intellect is the refusal to belabour the obvious"
- Alfred Bester
------------------------------------------------------------------------
_______________________________________________
Matterhorn mailing list
[email protected]
http://lists.opencastproject.org/mailman/listinfo/matterhorn
To unsubscribe please email
[email protected]
_______________________________________________