For a hg repo with two changesets, first one draft and second one private. I would like to be able to start hg serve, first pull gets only one changeset, then in another terminal hg phase -d 2 changes the secret cs to a draft on, the hg pull does not get this changeset. I have kill and start again the hg serve.
The relevant code is here: http://www.selenic.com/hg/file/5b327880a660/mercurial/hgweb/hgweb_mod.py#l105
Fixed by http://selenic.com/repo/hg/rev/a111e460318a Anton Shestakov <engored@ya.ru> hgweb: refresh hgweb.repo on phase change (issue4061) Make hgweb.refresh() also look at phaseroots file (in addition to 00changelog.i file) and reload the repo when os.stat returns different mtime or size than cached, signifying the file was modified. This way if user changes phase of a changeset (secret <-> draft), there's no need to restart hg serve to see the change. (please test the fix)
Bulk testing -> fixed