Skip to content

Forwarding actual permissions to Mercurial processes

Closes #334 (closed)

Normally, the abstraction layers in GitLab mean that the Project should not be accessible from the low level repository. However, we need it to pass it down to the hg processes. Doing it in hg_env_for_write is the way to make it really robust, since all write operations basically have to use it.

To mitigate somewhat this breach of abstraction, we make the attribute writable only, and we give it a more specific name than just '@project'. Aesthetically, it would be better to store only a factory for the UserAccess instance that we really need, but that could be done separately.

--HG-- branch : heptapod

Merge request reports