Mercurial > hg
view contrib/plan9/README @ 33453:f6b7617a85bb
phases: add a 'registernew' method to set new phases
This new function will be used by code that adds new changesets. It ajusts the
phase boundary to make sure added changesets are at least in their target
phase (they end up in an higher phase if their parents are in a higher phase).
Having a dedicated function also simplify the phases tracking. All the new
nodes are passed as argument, so we know that all of them needs to have their
new phase registered. We also know that no other nodes will be affected, so no
extra computation are needed.
This function differ from 'retractboundary' where some nodes might change
phase while some other might not. It can also affect nodes not passed as
parameters.
These simplification also apply to the computation itself. For now we use
'_retractboundary' there by convenience, but we may introduces simpler code
later.
While registering new revisions, we still need to check the actual phases of
the added node because it might be higher than the target phase (eg: target is
draft but parent is secret).
We will migrate users over the next changesets.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Tue, 11 Jul 2017 03:47:25 +0200 |
parents | 4b0fc75f9403 |
children |
line wrap: on
line source
Mercurial for Plan 9 from Bell Labs =================================== This directory contains support for Mercurial on Plan 9 from Bell Labs platforms. It is assumed that the version of Python running on these systems supports the ANSI/POSIX Environment (APE). At the time of this writing, the bichued/python port is the most commonly installed version of Python on these platforms. If a native port of Python is ever made, some minor modification will need to be made to support some of the more esoteric requirements of the platform rather than those currently made (cf. posix.py). By default, installations will have the factotum extension enabled; this extension permits factotum(4) to act as an authentication agent for HTTP repositories. Additionally, an extdiff command named 9diff is enabled which generates diff(1) compatible output suitable for use with the plumber(4). Commit messages are plumbed using E if no editor is defined; users must update the plumbed file to continue, otherwise the hg process must be interrupted. Some work remains with regard to documentation. Section 5 manual page references for hgignore and hgrc need to be re-numbered to section 6 (file formats) and a new man page writer should be written to support the Plan 9 man macro set. Until these issues can be resolved, manual pages are elided from the installation. Basic install: % mk install # do a system-wide install % hg debuginstall # sanity-check setup % hg # see help A proto(2) file is included in this directory as an example of how a binary distribution could be packaged, ostensibly with contrib(1). See https://mercurial-scm.org/ for detailed installation instructions, platform-specific notes, and Mercurial user information.