sapling/infinitepush
Durham Goode 355498c9c9 infinitepush: handle invalid remotenames
Summary:
Remotenames can return a name that has no nodes (it may exist in the remotename
store, but when we go to resolve the node the node doesn't exist). So we need to
check for existence after fetching the nodes.

Test Plan: This was crashing for a user. After the fix they no longer crash.

Reviewers: #mercurial, stash

Reviewed By: stash

Subscribers: mjpieters, medson

Differential Revision: https://phabricator.intern.facebook.com/D5194317

Signature: t1:5194317:1496847686:ab05335284b83a2060c2bfea4beec6bf0453905c
2017-06-07 12:55:29 -07:00
..
__init__.py infinitepush: handle invalid remotenames 2017-06-07 12:55:29 -07:00
backupcommands.py infinitepush: add config option to set a hostname 2017-06-07 05:26:29 -07:00
bundleparts.py fb-hgext: make compatible to upstream changes 2017-02-23 04:08:18 -08:00
common.py infinitepush: refactoring 2017-01-06 04:15:16 -08:00
fileindexapi.py infinitepush: record nodesmetadata 2017-03-30 02:07:30 -07:00
indexapi.py infinitepush: record nodesmetadata 2017-03-30 02:07:30 -07:00
README infinitepush: sample implementation 2016-08-26 06:09:01 -07:00
schema.sql infinitepush: record nodesmetadata 2017-03-30 02:07:30 -07:00
sqlindexapi.py infinitepush: record nodesmetadata 2017-03-30 02:07:30 -07:00
store.py infinitepush: fix string formatting 2017-02-03 07:10:53 -08:00

## What is it?

This extension adds ability to save certain pushes to a remote blob store
as bundles and to serve commits from remote blob store.
The revisions are stored on disk or in everstore.
The metadata are stored in sql or on disk.

## Config options

infinitepush.branchpattern: pattern to detect a scratchbranch, example
                            're:scratch/.+'

infinitepush.indextype: disk or sql for the metadata
infinitepush.reponame: only relevant for sql metadata backend, reponame to put in
                       sql

infinitepush.indexpath: only relevant for ondisk metadata backend, the path to
                        store the index on disk. If not set will be under .hg
                        in a folder named filebundlestore

infinitepush.storepath: only relevant for ondisk metadata backend, the path to
                        store the bundles. If not set, it will be
                        .hg/filebundlestore