sapling/tests/test-hgsql-requires.t
Jun Wu b178492317 changelog: disable inline revlog
Summary:
The inline revlog format merges `.i` and `.d` into one `.i` file. It was intended to reduce the
number of files for filelogs. For the changelog one extra file does not hurt.

This makes it easier to write native code parsing the changelog revlog index.

Reviewed By: xavierd

Differential Revision: D17125922

fbshipit-source-id: f48ffe0d2df71abec007a80e05b684dcbac71883
2019-08-30 14:58:02 -07:00

44 lines
1.3 KiB
Perl

$ . "$TESTDIR/hgsql/library.sh"
$ setconfig extensions.treemanifest=!
# Populate the db with an initial commit
$ initclient client
$ cd client
$ echo x > x
$ hg commit -qAm x
$ cd ..
$ initserver master masterrepo
$ cd master
$ hg log
$ hg pull -q ../client
Test that hgsql is a requirement
$ grep hgsql .hg/requires
hgsql
$ hg log -r tip --config extensions.hgsql=!
abort: repository requires features unknown to this Mercurial: hgsql!
(see https://mercurial-scm.org/wiki/MissingRequirement for more information)
[255]
$ hg log -r tip
changeset: 0:b292c1e3311f
tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: x
Ensure streaming clones to non-hgsql repos work
$ cd ..
$ hg clone --config extensions.hgsql=! --config ui.ssh='python "$TESTDIR/dummyssh"' --uncompressed ssh://user@dummy/master client2 | grep "streaming all changes"
streaming all changes
Ensure streaming clones to hgsql repos work
$ hg clone --config extensions.hgsql= --config ui.ssh='python "$TESTDIR/dummyssh"' --uncompressed ssh://user@dummy/master client3
streaming all changes
4 files to transfer, 294 bytes of data
transferred 294 bytes in * seconds (*) (glob)
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved