Shelve extension
Bill Barry
after.fallout at gmail.com
Mon Feb 23 12:41:48 CST 2009
Paul Moore wrote:
> Which, to be honest, sounds like a good, clear distinction which
> justifies having 2 distinct extensions.
>
> That's not to say that merging all 4 wouldn't be a good goal, of course.
Perhaps a single extension will not be reached; at the very least there
will be very well defined integration between them.
It is way too early to even begin talking about this but, as of right
now I am envisioning at some point a UI mechanism that hg webhosts would
implement which would hook into a mailing list and a repository and a CI
system and provide a good interface for accepting patches and forming
some sort of community hub around a source tree.
there would be a process which:
1. monitors a mailing list (or even a set of mailing lists?)
2. for each mail thread that contains a single patch, start a thread in
the web-system and store the patch in the system's attic (and commit it)
3. for each mail thread that contains a set of patches start a queue in
the attic and a thread
4. every list reply goes to the thread, and every thread post generates
a reply to the list
the web interface would:
1. allow users in an ACL to delete threads, mark patches as accepted,
mark patches as denied
2. provide friendly urls to see what is happenning/manage a
patch/patchset (ex:
https://bitbucket.org/segv/hg-website/patchwork/fixbug1 could contain a
patch and accompanying thread)
3. allow some sort of pbranch clone which would let users clone a
pbranchified repository of the current patch they are looking at so they
can collaborate (this repo would additionally contain path aliases set
up to be able to pull in other user's pbranchified modifications to the
current patch, etc.)
the backing storage would be defined in such a way that it can be merged
fully automatically and will be stored within a repository of its own.
The CI system could interact with this by placing testresults and such
in a specific location indicating how a particular patch tests out.
Also, once a patch was marked accepted, the system would queue it up for
inclusion into the mainline and if the CI system signs off on it and it
applies cleanly against the tip, the patch would get turned into a
changeset at the tip of the repository graph.
This would also fulfill the needs for a lightweight (distributed) bug
reporting system (just file a blank patch with the description of the
bug to the mailing list or directly in the webinterface)
More information about the Mercurial
mailing list