view tests/test-remotefilelog-bundles.t @ 51626:865efc020c33 default tip

dirstate: remove the python-side whitelist of allowed matchers This whitelist is too permissive because it allows matchers that contain disallowed ones deep inside, for example through `intersectionmatcher`. It is also too restrictive because it doesn't pass through some of the matchers we support, such as `patternmatcher`. It's also unnecessary because unsupported matchers raise `FallbackError` and we fall back anyway. Making this change makes more of the tests use rust code path, and therefore subtly change behavior. For example, rust status in largefiles repos seems to have strange behavior.
author Arseniy Alekseyev <aalekseyev@janestreet.com>
date Fri, 26 Apr 2024 19:10:35 +0100
parents 47a9527731c3
children
line wrap: on
line source

#require no-windows

  $ . "$TESTDIR/remotefilelog-library.sh"

  $ hg init master
  $ cd master
  $ cat >> .hg/hgrc <<EOF
  > [remotefilelog]
  > server=True
  > EOF
  $ echo x > x
  $ hg commit -qAm x
  $ echo y >> x
  $ hg commit -qAm y
  $ echo z >> x
  $ hg commit -qAm z

  $ cd ..

  $ hgcloneshallow ssh://user@dummy/master shallow -q
  1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob)
  $ cd shallow

Unbundling a shallow bundle

  $ hg strip -r 66ee28d0328c
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob)
  2 files fetched over 2 fetches - (2 misses, 0.00% hit ratio) over *s (glob)
  $ hg unbundle .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg
  adding changesets
  adding manifests
  adding file changes
  added 2 changesets with 2 changes to 1 files
  new changesets 66ee28d0328c:16db62c5946f
  (run 'hg update' to get a working copy)

Unbundling a full bundle

  $ hg -R ../master bundle -r 66ee28d0328c:: --base "66ee28d0328c^" ../fullbundle.hg
  2 changesets found
  $ hg strip -r 66ee28d0328c
  saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob)
  $ hg unbundle ../fullbundle.hg
  adding changesets
  adding manifests
  adding file changes
  added 2 changesets with 2 changes to 1 files
  new changesets 66ee28d0328c:16db62c5946f (2 drafts)
  (run 'hg update' to get a working copy)

Pulling from a shallow bundle

  $ hg strip -r 66ee28d0328c --config remotefilelog.strip.includefiles=none
  saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob)
  $ hg pull -r 66ee28d0328c .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg
  pulling from .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg
  searching for changes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 0 changes to 0 files
  new changesets 66ee28d0328c (1 drafts)
  (run 'hg update' to get a working copy)

Pulling from a full bundle, also testing that strip produces a full bundle by
default.

  $ hg strip -r 66ee28d0328c
  saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob)
  $ hg pull -r 66ee28d0328c .hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg
  pulling from .hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg
  searching for changes
  abort: cannot pull from full bundles
  (use `hg unbundle` instead)
  [255]