Mercurial > hg
view tests/test-acl.out @ 11109:a2bc2f2d77a9
subrepo: normalize path part of URLs so that pulling subrepos from webdir works
For a "all projects at root" repo layout eg:
/main
/sub
Where subrepos are used such that a clone of main has this layout:
./main/
./main/.hgsub
./main/sub/
And the .hgsub content is:
sub = ../sub
This allows a pull from a hgweb where main and sub are exposed
at the root (or same directory level)
The current code doesn't normalize the path component of a pull
url. this results in trying to pull from
http://server.com/hg/main/../sub
Current hgweb implementation doesn't reduce the path component
so this results in a 404 error though everything is setup logically.
This patch adresses this 404 error on the puller side
normalizing the URLs used for pulling sub repos. For this
example, the URL would be reduced to http://server.com/hg/sub
Fix + test
author | Edouard Gomez <ed.gomez@free.fr> |
---|---|
date | Sat, 01 May 2010 23:05:19 +0200 |
parents | b27a43eceda3 |
children | 2a857f9d2c6c |
line wrap: on
line source
3:911600dab2ae requesting all changes adding changesets adding manifests adding file changes added 1 changesets with 3 changes to 3 files updating to branch default 3 files updated, 0 files merged, 0 files removed, 0 files unresolved Extension disabled for lack of a hook Pushing as user fred hgrc = """ """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 Extension disabled for lack of acl.sources Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: changes have source "push" - skipping updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 No [acl.allow]/[acl.deny] Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow not enabled acl: acl.deny not enabled acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: allowing changeset 911600dab2ae updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 Empty [acl.allow] Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 0 entries for user fred acl: acl.deny not enabled acl: branch access granted: "ef1ea85a6374" on branch "default" acl: user fred not allowed on foo/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 transaction abort! rollback completed abort: acl: access denied for changeset ef1ea85a6374 no rollback information available 0:6675d58eff77 fred is allowed inside foo/ Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny not enabled acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: user fred not allowed on quux/file.py error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae transaction abort! rollback completed abort: acl: access denied for changeset 911600dab2ae no rollback information available 0:6675d58eff77 Empty [acl.deny] Pushing as user barney hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 0 entries for user barney acl: acl.deny enabled, 0 entries for user barney acl: branch access granted: "ef1ea85a6374" on branch "default" acl: user barney not allowed on foo/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 transaction abort! rollback completed abort: acl: access denied for changeset ef1ea85a6374 no rollback information available 0:6675d58eff77 fred is allowed inside foo/, but not foo/bar/ (case matters) Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny enabled, 1 entries for user fred acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: user fred not allowed on quux/file.py error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae transaction abort! rollback completed abort: acl: access denied for changeset 911600dab2ae no rollback information available 0:6675d58eff77 fred is allowed inside foo/, but not foo/Bar/ Pushing as user fred hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny enabled, 2 entries for user fred acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: user fred denied on foo/Bar/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 transaction abort! rollback completed abort: acl: access denied for changeset f9cafe1212c8 no rollback information available 0:6675d58eff77 barney is not mentioned => not allowed anywhere Pushing as user barney hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 0 entries for user barney acl: acl.deny enabled, 0 entries for user barney acl: branch access granted: "ef1ea85a6374" on branch "default" acl: user barney not allowed on foo/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 transaction abort! rollback completed abort: acl: access denied for changeset ef1ea85a6374 no rollback information available 0:6675d58eff77 barney is allowed everywhere Pushing as user barney hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred [acl.allow] ** = barney """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user barney acl: acl.deny enabled, 0 entries for user barney acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: allowing changeset 911600dab2ae updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 wilma can change files with a .txt extension Pushing as user wilma hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred [acl.allow] ** = barney **/*.txt = wilma """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user wilma acl: acl.deny enabled, 0 entries for user wilma acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: user wilma not allowed on quux/file.py error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae transaction abort! rollback completed abort: acl: access denied for changeset 911600dab2ae no rollback information available 0:6675d58eff77 file specified by acl.config does not exist Pushing as user barney hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred [acl.allow] ** = barney **/*.txt = wilma [acl] config = ../acl.config """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook error: pretxnchangegroup.acl hook raised an exception: [Errno 2] No such file or directory: '../acl.config' transaction abort! rollback completed abort: No such file or directory: ../acl.config no rollback information available 0:6675d58eff77 betty is allowed inside foo/ by a acl.config file Pushing as user betty hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred [acl.allow] ** = barney **/*.txt = wilma [acl] config = ../acl.config """ acl.config = """ [acl.allow] foo/** = betty """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user betty acl: acl.deny enabled, 0 entries for user betty acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: user betty not allowed on quux/file.py error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae transaction abort! rollback completed abort: acl: access denied for changeset 911600dab2ae no rollback information available 0:6675d58eff77 acl.config can set only [acl.allow]/[acl.deny] Pushing as user barney hgrc = """ [hooks] pretxnchangegroup.acl = python:hgext.acl.hook [acl] sources = push [acl.allow] foo/** = fred [acl.deny] foo/bar/** = fred foo/Bar/** = fred [acl.allow] ** = barney **/*.txt = wilma [acl] config = ../acl.config """ acl.config = """ [acl.allow] foo/** = betty [hooks] changegroup.acl = false """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user barney acl: acl.deny enabled, 0 entries for user barney acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: allowing changeset 911600dab2ae updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 asterisk test fred is always allowed Pushing as user fred hgrc = """ [acl] sources = push [extensions] [acl.allow] ** = fred """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny not enabled acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: allowing changeset 911600dab2ae updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 no one is allowed inside foo/Bar/ Pushing as user fred hgrc = """ [acl] sources = push [extensions] [acl.allow] ** = fred [acl.deny] foo/Bar/** = * """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny enabled, 1 entries for user fred acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: user fred denied on foo/Bar/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 transaction abort! rollback completed abort: acl: access denied for changeset f9cafe1212c8 no rollback information available 0:6675d58eff77 OS-level groups @group1 is always allowed Pushing as user fred hgrc = """ [acl] sources = push [extensions] [acl.allow] ** = @group1 """ pushing to ../b searching for changes common changesets up to 6675d58eff77 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny not enabled acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: allowing changeset f9cafe1212c8 acl: branch access granted: "911600dab2ae" on branch "default" acl: allowing changeset 911600dab2ae updating the branch cache rolling back to revision 1 (undo push) 0:6675d58eff77 @group is allowed inside anything but foo/Bar/ Pushing as user fred hgrc = """ [acl] sources = push [extensions] [acl.allow] ** = @group1 [acl.deny] foo/Bar/** = @group1 """ pushing to ../b searching for changes common changesets up to 6675d58eff77 invalidating branch cache (tip differs) 3 changesets found list of changesets: ef1ea85a6374b77d6da9dcda9541f498f2d17df7 f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd 911600dab2ae7a9baff75958b84fe606851ce955 adding changesets bundling changes: 0 chunks bundling changes: 1 chunks bundling changes: 2 chunks bundling changes: 3 chunks bundling changes: 4 chunks bundling changes: 5 chunks bundling changes: 6 chunks bundling changes: 7 chunks bundling changes: 8 chunks bundling changes: 9 chunks bundling manifests: 0 chunks bundling manifests: 1 chunks bundling manifests: 2 chunks bundling manifests: 3 chunks bundling manifests: 4 chunks bundling manifests: 5 chunks bundling manifests: 6 chunks bundling manifests: 7 chunks bundling manifests: 8 chunks bundling manifests: 9 chunks bundling files: foo/Bar/file.txt 0 chunks bundling files: foo/Bar/file.txt 1 chunks bundling files: foo/Bar/file.txt 2 chunks bundling files: foo/Bar/file.txt 3 chunks bundling files: foo/file.txt 4 chunks bundling files: foo/file.txt 5 chunks bundling files: foo/file.txt 6 chunks bundling files: foo/file.txt 7 chunks bundling files: quux/file.py 8 chunks bundling files: quux/file.py 9 chunks bundling files: quux/file.py 10 chunks bundling files: quux/file.py 11 chunks changesets: 1 chunks add changeset ef1ea85a6374 changesets: 2 chunks add changeset f9cafe1212c8 changesets: 3 chunks add changeset 911600dab2ae adding manifests manifests: 1/3 chunks (33.33%) manifests: 2/3 chunks (66.67%) manifests: 3/3 chunks (100.00%) adding file changes adding foo/Bar/file.txt revisions files: 1/3 chunks (33.33%) adding foo/file.txt revisions files: 2/3 chunks (66.67%) adding quux/file.py revisions files: 3/3 chunks (100.00%) added 3 changesets with 3 changes to 3 files calling hook pretxnchangegroup.acl: hgext.acl.hook acl: acl.allow.branches not enabled acl: acl.deny.branches not enabled acl: acl.allow enabled, 1 entries for user fred acl: acl.deny enabled, 1 entries for user fred acl: branch access granted: "ef1ea85a6374" on branch "default" acl: allowing changeset ef1ea85a6374 acl: branch access granted: "f9cafe1212c8" on branch "default" acl: user fred denied on foo/Bar/file.txt error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 transaction abort! rollback completed abort: acl: access denied for changeset f9cafe1212c8 no rollback information available 0:6675d58eff77