{"thread":{"id":"34440","subject":"Missing capabilities in Documentation/technical/protocol-capbilities.txt","startedAt":"2013-07-15T12:25:19Z","lastAt":"2013-07-26T15:36:02Z","messageCount":9,"participants":["Duy Nguyen","Clemens Buchacher","Jeff King","Nguyễn Thái Ngọc Duy","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"223420","messageId":"CACsJy8BcEfc33HNxQB+_msbkbcxFfqg1xOpeRxNGL_cUqruE0w@mail.gmail.com","threadId":"34440","inReplyTo":null,"subject":"Missing capabilities in Documentation/technical/protocol-capbilities.txt","fromName":"Duy Nguyen","fromEmail":"pclouds@gmail.com","sentAt":"2013-07-15T12:25:19Z","receivedAt":"2013-07-15T12:25:19Z","isPatch":false,"sender":{"key":"pclouds@gmail.com","avatar":"https://avatars.githubusercontent.com/u/720?v=4"},"body":"I noticed that \"quiet\" and \"agent\" capabilities were missing in\nprotocol-capabilitities.txt. I have a rough idea what they do, but I\nthink it's best to be documented by the authors. Maybe you have some\ntime to make a patch?\n--\nDuy\n"},{"id":"223571","messageId":"20130717113140.GA22252@ecki.lan","threadId":"34440","inReplyTo":"CACsJy8BcEfc33HNxQB+_msbkbcxFfqg1xOpeRxNGL_cUqruE0w@mail.gmail.com","subject":"Re: Missing capabilities in Documentation/technical/protocol-capbilities.txt","fromName":"Clemens Buchacher","fromEmail":"drizzd@aon.at","sentAt":"2013-07-17T11:31:40Z","receivedAt":"2013-07-17T11:31:40Z","isPatch":false,"sender":{"key":"drizzd@gmx.net","avatar":"https://avatars.githubusercontent.com/u/59082?v=4"},"body":"On Mon, Jul 15, 2013 at 07:25:19PM +0700, Duy Nguyen wrote:\n>\n> I noticed that \"quiet\" and \"agent\" capabilities were missing in\n> protocol-capabilitities.txt. I have a rough idea what they do, but I\n> think it's best to be documented by the authors. Maybe you have some\n> time to make a patch?\n\nHi Duy,\n\nI am sorry to disappoint, but if I had time to work on Git, I'd rather\nbe writing code. I have some great ideas if you are interested. :-P\n\nBesides, I barely even remember that it was me who implemented the\n\"quiet\" capability. In order to write documentation for it, I would have\nto research the implementation as much as anyone.\n\nCheers,\nClemens\n"},{"id":"224025","messageId":"20130724080051.GA3890@sigill.intra.peff.net","threadId":"34440","inReplyTo":"CACsJy8BcEfc33HNxQB+_msbkbcxFfqg1xOpeRxNGL_cUqruE0w@mail.gmail.com","subject":"[PATCH 0/4] protocol-capabilities documentation updates","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-07-24T08:00:51Z","receivedAt":"2013-07-24T08:00:51Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Jul 15, 2013 at 07:25:19PM +0700, Nguyen Thai Ngoc Duy wrote:\n\n> I noticed that \"quiet\" and \"agent\" capabilities were missing in\n> protocol-capabilitities.txt. I have a rough idea what they do, but I\n> think it's best to be documented by the authors. Maybe you have some\n> time to make a patch?\n\nThanks for bringing it up; we should be more careful about documenting\nthese as we add them.\n\nI went ahead and documented them both, as I also remember the rationale\nfor \"quiet\". And of course I found some other inaccuracies in the\ncapabilities documentation while I was there. :)\n\n  [1/4]: docs: fix 'report-status' protocol capability thinko\n  [2/4]: docs: note that receive-pack knows side-band-64k capability\n  [3/4]: document 'agent' protocol capability\n  [4/4]: document 'quiet' receive-pack capability\n\n-Peff\n"},{"id":"224026","messageId":"20130724080120.GA4425@sigill.intra.peff.net","threadId":"34440","inReplyTo":"20130724080051.GA3890@sigill.intra.peff.net","subject":"[PATCH 1/4] docs: fix 'report-status' protocol capability thinko","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-07-24T08:01:21Z","receivedAt":"2013-07-24T08:01:21Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"The report-status capability is understood by receive-pack,\nnot upload-pack.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n Documentation/technical/protocol-capabilities.txt | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\nindex b15517f..11467ff 100644\n--- a/Documentation/technical/protocol-capabilities.txt\n+++ b/Documentation/technical/protocol-capabilities.txt\n@@ -168,7 +168,7 @@ report-status\n report-status\n -------------\n \n-The upload-pack process can receive a 'report-status' capability,\n+The receive-pack process can receive a 'report-status' capability,\n which tells it that the client wants a report of what happened after\n a packfile upload and reference update.  If the pushing client requests\n this capability, after unpacking and updating references the server\n-- \n1.8.3.rc1.30.gff0fb75\n"},{"id":"224027","messageId":"20130724080159.GB4425@sigill.intra.peff.net","threadId":"34440","inReplyTo":"20130724080051.GA3890@sigill.intra.peff.net","subject":"[PATCH 2/4] docs: note that receive-pack knows side-band-64k capability","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-07-24T08:01:59Z","receivedAt":"2013-07-24T08:01:59Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"The protocol-capabilities documentation notes that any\ncapabilities not explicitly mentioned for receive-pack work\nonly for upload-pack.\n\nReceive-pack has advertised and understood side-band-64k\nsince 38a81b4 (receive-pack: Wrap status reports inside\nside-band-64k, 2010-02-05), but we do not mention it\nexplicitly. Let's do so.\n\nNote that receive-pack does not understand side-band, which\nwas obsolete by that point.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n Documentation/technical/protocol-capabilities.txt | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\nindex 11467ff..9bc2a10 100644\n--- a/Documentation/technical/protocol-capabilities.txt\n+++ b/Documentation/technical/protocol-capabilities.txt\n@@ -21,8 +21,8 @@ recognized by the receive-pack (push to server) process.\n The 'report-status' and 'delete-refs' capabilities are sent and\n recognized by the receive-pack (push to server) process.\n \n-The 'ofs-delta' capability is sent and recognized by both upload-pack\n-and receive-pack protocols.\n+The 'ofs-delta' and 'side-band-64k' capabilities are sent and recognized\n+by both upload-pack and receive-pack protocols.\n \n All other capabilities are only recognized by the upload-pack (fetch\n from server) process.\n-- \n1.8.3.rc1.30.gff0fb75\n"},{"id":"224028","messageId":"20130724080313.GC4425@sigill.intra.peff.net","threadId":"34440","inReplyTo":"20130724080051.GA3890@sigill.intra.peff.net","subject":"[PATCH 3/4] document 'agent' protocol capability","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-07-24T08:03:13Z","receivedAt":"2013-07-24T08:03:13Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"This was added in ff5effd (include agent identifier in\ncapability string, 2012-08-03), but neither the syntax nor\nthe semantics were ever documented outside of the commit\nmessage.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n Documentation/technical/protocol-capabilities.txt | 17 ++++++++++++++++-\n 1 file changed, 16 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\nindex 9bc2a10..d35159e 100644\n--- a/Documentation/technical/protocol-capabilities.txt\n+++ b/Documentation/technical/protocol-capabilities.txt\n@@ -22,7 +22,8 @@ The 'ofs-delta' and 'side-band-64k' capabilities are sent and recognized\n recognized by the receive-pack (push to server) process.\n \n The 'ofs-delta' and 'side-band-64k' capabilities are sent and recognized\n-by both upload-pack and receive-pack protocols.\n+by both upload-pack and receive-pack protocols.  The 'agent' capability\n+may optionally be sent in both protocols.\n \n All other capabilities are only recognized by the upload-pack (fetch\n from server) process.\n@@ -123,6 +124,20 @@ send/read OBJ_OFS_DELTA (aka type 6) in a packfile.\n its base by position in pack rather than by an obj-id.  That is, they can\n send/read OBJ_OFS_DELTA (aka type 6) in a packfile.\n \n+agent\n+-----\n+\n+The server may optionally send a capability of the form `agent=X` to\n+notify the client that the server is running version `X`. The client may\n+optionally return its own agent string by responding with an `agent=Y`\n+capability (but it MUST NOT do so if the server did not mention the\n+agent capability). The `X` and `Y` strings may contain any printable\n+ASCII characters except space (i.e., the byte range 32 < x < 127), and\n+are typically of the form \"package/version\" (e.g., \"git/1.8.3.1\"). The\n+agent strings are purely informative for statistics and debugging\n+purposes, and MUST NOT be used to programatically assume the presence\n+or absence of particular features.\n+\n shallow\n -------\n \n-- \n1.8.3.rc1.30.gff0fb75\n"},{"id":"224029","messageId":"20130724080342.GD4425@sigill.intra.peff.net","threadId":"34440","inReplyTo":"20130724080051.GA3890@sigill.intra.peff.net","subject":"[PATCH 4/4] document 'quiet' receive-pack capability","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-07-24T08:03:43Z","receivedAt":"2013-07-24T08:03:43Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"This was added in c207e34 (fix push --quiet: add 'quiet'\ncapability to receive-pack, 2012-01-08) but never\ndocumented.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n Documentation/technical/protocol-capabilities.txt | 12 +++++++++++-\n 1 file changed, 11 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\nindex d35159e..ec131b6 100644\n--- a/Documentation/technical/protocol-capabilities.txt\n+++ b/Documentation/technical/protocol-capabilities.txt\n@@ -18,7 +18,7 @@ NOT advertise capabilities it does not understand.\n and server advertised.  As a consequence of these rules, server MUST\n NOT advertise capabilities it does not understand.\n \n-The 'report-status' and 'delete-refs' capabilities are sent and\n+The 'report-status', 'delete-refs', and 'quiet' capabilities are sent and\n recognized by the receive-pack (push to server) process.\n \n The 'ofs-delta' and 'side-band-64k' capabilities are sent and recognized\n@@ -200,3 +200,13 @@ to delete references.\n value of a reference update.  It is not sent back by the client, it\n simply informs the client that it can be sent zero-id values\n to delete references.\n+\n+quiet\n+-----\n+\n+If the receive-pack server advertises the 'quiet' capability, it is\n+capable of silencing human-readable progress output which otherwise may\n+be shown when processing the received pack. A send-pack client should\n+respond with the 'quiet' capability to suppress server-side progress\n+reporting if the local progress reporting is also being suppressed\n+(e.g., via `push -q`, or if stderr does not go to a tty).\n-- \n1.8.3.rc1.30.gff0fb75\n"},{"id":"224121","messageId":"1374836514-17741-1-git-send-email-pclouds@gmail.com","threadId":"34440","inReplyTo":"20130724080342.GD4425@sigill.intra.peff.net","subject":"[PATCH 5/4] document 'allow-tip-sha1-in-want' capability","fromName":"Nguyễn Thái Ngọc Duy","fromEmail":"pclouds@gmail.com","sentAt":"2013-07-26T11:01:54Z","receivedAt":"2013-07-26T11:01:54Z","isPatch":true,"sender":{"key":"pclouds@gmail.com","avatar":"https://avatars.githubusercontent.com/u/720?v=4"},"body":"See 390eb36 (upload-pack: optionally allow fetching from the tips of\nhidden refs - 2013-01-28) for more information.\n\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\n---\n Maybe this too for completeness..\n\n Documentation/technical/protocol-capabilities.txt | 7 +++++++\n 1 file changed, 7 insertions(+)\n\ndiff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\nindex ec131b6..31cbe07 100644\n--- a/Documentation/technical/protocol-capabilities.txt\n+++ b/Documentation/technical/protocol-capabilities.txt\n@@ -210,3 +210,10 @@ be shown when processing the received pack. A send-pack client should\n respond with the 'quiet' capability to suppress server-side progress\n reporting if the local progress reporting is also being suppressed\n (e.g., via `push -q`, or if stderr does not go to a tty).\n+\n+allow-tip-sha1-in-want\n+----------------------\n+\n+If the upload-pack server advertises this capability, fetch-pack may\n+send \"want\" lines with SHA-1s that exist at the server but are not\n+advertised by upload-pack.\n-- \n1.8.2.83.gc99314b\n"},{"id":"224129","messageId":"7vsiz12v19.fsf@alter.siamese.dyndns.org","threadId":"34440","inReplyTo":"1374836514-17741-1-git-send-email-pclouds@gmail.com","subject":"Re: [PATCH 5/4] document 'allow-tip-sha1-in-want' capability","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-07-26T15:36:02Z","receivedAt":"2013-07-26T15:36:02Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Nguyễn Thái Ngọc Duy <pclouds@gmail.com> writes:\n\n> See 390eb36 (upload-pack: optionally allow fetching from the tips of\n> hidden refs - 2013-01-28) for more information.\n>\n> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\n> ---\n>  Maybe this too for completeness..\n\nYou are absolutely right, and this exists only on the fetch vs\nupload-pack side, so there is no need to update the introductory\ntext and the change in this patch is sufficient and complete.\n\nThanks.\n\n>  Documentation/technical/protocol-capabilities.txt | 7 +++++++\n>  1 file changed, 7 insertions(+)\n>\n> diff --git a/Documentation/technical/protocol-capabilities.txt b/Documentation/technical/protocol-capabilities.txt\n> index ec131b6..31cbe07 100644\n> --- a/Documentation/technical/protocol-capabilities.txt\n> +++ b/Documentation/technical/protocol-capabilities.txt\n> @@ -210,3 +210,10 @@ be shown when processing the received pack. A send-pack client should\n>  respond with the 'quiet' capability to suppress server-side progress\n>  reporting if the local progress reporting is also being suppressed\n>  (e.g., via `push -q`, or if stderr does not go to a tty).\n> +\n> +allow-tip-sha1-in-want\n> +----------------------\n> +\n> +If the upload-pack server advertises this capability, fetch-pack may\n> +send \"want\" lines with SHA-1s that exist at the server but are not\n> +advertised by upload-pack.\n"}]}