view mercurial/help/hgrc.5.txt @ 39814:d059cb669632

wireprotov2: allow multiple fields to follow revision maps The *data wire protocol commands emit a series of CBOR values. Because revision/delta data may be large, their data is emitted outside the map as a top-level bytestring value. Before this commit, we'd emit a single optional bytestring value after the revision descriptor map. This got the job done. But it was limiting in that we could only send a single field. And, it required the consumer to know that the presence of a key in the map implied the existence of a following bytestring value. This commit changes the encoding strategy so top-level bytestring values in the stream are explicitly denoted in a "fieldsfollowing" key. This key contains an array defining what fields that follow and the expected size of each field. By defining things this way, we can easily send N bytestring values without any ambiguity about their order. In addition, clients only need to know how to parse ``fieldsfollowing`` to know if extra values are present. Because this breaks backwards compatibility, we've bumped the version number of the wire protocol version 2 API endpoint. Differential Revision: https://phab.mercurial-scm.org/D4620
author Gregory Szorc <gregory.szorc@gmail.com>
date Thu, 20 Sep 2018 12:57:23 -0700
parents 854a7315603e
children 8427fea04017
line wrap: on
line source

======
 hgrc
======

---------------------------------
configuration files for Mercurial
---------------------------------

:Author:         Bryan O'Sullivan <bos@serpentine.com>
:Organization:   Mercurial
:Manual section: 5
:Manual group:   Mercurial Manual

.. contents::
   :backlinks: top
   :class: htmlonly


Description
===========

.. include:: hgrc.5.gendoc.txt

Author
======
Bryan O'Sullivan <bos@serpentine.com>.

Mercurial was written by Matt Mackall <mpm@selenic.com>.

See Also
========
|hg(1)|_, |hgignore(5)|_

Copying
=======
This manual page is copyright 2005 Bryan O'Sullivan.
Mercurial is copyright 2005-2018 Matt Mackall.
Free use of this software is granted under the terms of the GNU General
Public License version 2 or any later version.

.. include:: common.txt