Mercurial > hg
view tests/test-encode.t @ 42126:ef0e3cc684b3
repoview: introduce a filter for serving hidden changesets
There are multiple usecase for being able to explicitly view or pull obsolete
from a server. We need to be able to do so without exposing the secret
changesets. We introduces a dedicated repository "view" to do so. Way to expose
this "view" to the user will come later.
To keep a behavior consistent with expected client/server behavior, the general
idea is for the obsolete access to be explicitly requested by the code
generating the request. In addition, the will be server side configuration to
restrict the access to this feature.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 21 May 2018 17:28:35 +0200 |
parents | 538353b80676 |
children | b7fde9237c92 |
line wrap: on
line source
Test encode/decode filters $ hg init $ cat > .hg/hgrc <<EOF > [encode] > not.gz = tr [:lower:] [:upper:] > *.gz = gzip -d > [decode] > not.gz = tr [:upper:] [:lower:] > *.gz = gzip > EOF $ echo "this is a test" | gzip > a.gz $ echo "this is a test" > not.gz $ hg add * $ hg ci -m "test" no changes $ hg status $ touch * no changes $ hg status check contents in repo are encoded $ hg debugdata a.gz 0 this is a test $ hg debugdata not.gz 0 THIS IS A TEST check committed content was decoded $ gunzip < a.gz this is a test $ cat not.gz this is a test $ rm * $ hg co -C 2 files updated, 0 files merged, 0 files removed, 0 files unresolved check decoding of our new working dir copy $ gunzip < a.gz this is a test $ cat not.gz this is a test check hg cat operation $ hg cat a.gz this is a test $ hg cat --decode a.gz | gunzip this is a test $ mkdir subdir $ cd subdir $ hg -R .. cat ../a.gz this is a test $ hg -R .. cat --decode ../a.gz | gunzip this is a test $ cd .. check tempfile filter $ hg cat a.gz --decode --config 'decode.*.gz=tempfile:gzip -c INFILE > OUTFILE' | gunzip this is a test $ hg cat a.gz --decode --config 'decode.*.gz=tempfile:sh -c "exit 1"' abort: command '*' failed: exited with status 1 (glob) [255] $ cd ..