public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] data/glep:master commit in: /
Date: Sat, 25 Nov 2017 20:49:36 +0000 (UTC)	[thread overview]
Message-ID: <1511642957.b00ade7b6467a3ae066d66f6e4ce71fb10309710.mgorny@gentoo> (raw)

commit:     b00ade7b6467a3ae066d66f6e4ce71fb10309710
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 22 11:40:34 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 20:49:17 2017 +0000
URL:        https://gitweb.gentoo.org/data/glep.git/commit/?id=b00ade7b

glep-0074: Provide encoding for disallowed characters

 glep-0074.rst | 75 ++++++++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 56 insertions(+), 19 deletions(-)

diff --git a/glep-0074.rst b/glep-0074.rst
index b0daa05..3dc6730 100644
--- a/glep-0074.rst
+++ b/glep-0074.rst
@@ -70,7 +70,8 @@ other space-separated values.
 
 Unless specified otherwise, the paths used in the Manifest files
 are relative to the directory containing the Manifest file. The paths
-must not reference the parent directory (``..``).
+must not reference the parent directory (``..``). Forward slash (``/``)
+is used as path component separator.
 
 The Manifest files use UTF-8 encoding.
 
@@ -132,13 +133,35 @@ are not otherwise ignored reside on a different filesystem, or symbolic
 links point to targets on a different filesystem, they must
 be explicitly excluded via ``IGNORE``.
 
-All paths specified in the Manifest file must consist of characters
+
+Path and filename encoding
+--------------------------
+
+The path fields in the Manifest file must consist of characters
 corresponding to valid UTF-8 code points excluding the NULL character
 (``U+0000``), the backwards slash (``\``) and characters classified
 as whitespace in the current version of the Unicode standard
-[#UNICODE]_. It is an error to use Manifest files in directories
-containing files whose names contain the disallowed characters.
-The forward slash (``/``) must be used as path separator.
+[#UNICODE]_.
+
+Any of the excluded characters that are present in path must be encoded
+using one of the following escape sequences:
+
+- characters in the ``U+0000`` to ``U+007F`` range can be encoded
+  as ``\xHH`` where ``HH`` specifies the zero-padded, hexadecimal
+  character code,
+
+- characters in the ``U+0000`` to ``U+FFFF`` range can be encoded
+  as ``\uHHHH`` where ``HHHH`` specifies the zero-padded, hexadecimal
+  character code,
+
+- characters in the UCS-4 range can be encoded as ``\UHHHHHHHH``
+  where ``HHHHHHHH`` specifies the zero-padded, hexadecimal character
+  code.
+
+It is invalid for backwards slash to be used in any other context,
+and a backwards slash present in filename must be encoded. Backwards
+slash used as path component separator should be replaced by forward
+slash instead.
 
 
 File verification
@@ -563,7 +586,7 @@ specification syntax [#PMS-FETCH]_ implicitly makes it impossible to use
 filenames containing whitespace.
 
 This specification aims to avoid arbitrary restrictions. For this
-reason, filename characters are only restricted by excluding two
+reason, filename characters are only restricted by excluding three
 technically problematic groups:
 
 1. The NULL character (``U+0000``) is normally used to indicate the end
@@ -571,12 +594,10 @@ technically problematic groups:
    written using C. Furthermore, it is not allowed in any known
    filesystem.
 
-2. The backwards slash character (``\``) is frequently used as an escape
-   character, in particular in the languages derived from C and in shell
-   script. Furthermore, it is used as path separator on Windows systems.
-   It is forbidden to avoid implementation mistakes (in particular,
-   attempting to use it to escape whitespace or as path separator
-   on Windows) but also reserved for possible future extension.
+2. The backwards slash character (``\``) is used as path separator
+   on Windows systems, so it's extremely unlikely to be used in real
+   filenames. For this reason it is used to implement character
+   encoding with minimal risk of breaking backwards compatibility.
 
 3. Whitespace characters are used to separate Manifest fields
    and entries. While technically it would be enough to restrict space
@@ -585,18 +606,34 @@ technically problematic groups:
    all whitespace characters are forbidden to avoid confusion
    and implementation errors.
 
-While the specification could be extended to allow such filenames
-by using some form of escaping, there is currently no apparent need
-for such a feature.
-
 Historically, Portage attempted to overcome the whitespace limitation
 by attempting to locate the size field and take everything before it
 as filename. This was terribly fragile and even if it worked, it would
 solve the problem only partially.
 
-Since the same restrictions apply to ``IGNORE`` rules, it is currently
-not possible to either list or ignore the file using whitespace
-characters. Therefore, the presence of such files is forbidden entirely.
+The character encoding method provides means to overcome the character
+restrictions to extend the tool usability beyond immediate Gentoo uses.
+The backslash escape form based on Python unicode strings is used
+since it can encode all characters within the Unicode range, the syntax
+is familiar to many programmers and the backwards slash character
+is extremely unlikely to appear in real filenames.
+
+Syntax is limited to the minimum necessary to implement the encoding.
+Shorthand forms (e.g. ``\t`` or ``\\``) are omitted to avoid unnecessary
+complexity, and to reduce the risk of shell users using backslash
+to escape space directly. The ``\x`` form is limited to ``\x00..\x7F``
+range to avoid ambiguity of higher values which might be interpreted
+either as UCS-2 code points or part of a UTF-8 encoded character.
+
+Encoding stores UCS-2/UCS-4 characters directly rather than hex-encoded
+UTF-8 string to simplify the implementation. In particular, it makes it
+possible to process the Manifest file as UTF-8 encoded text without
+having to perform additional UTF-8 decoding (and verification)
+of the escaped data.
+
+URL-encoding was considered as an alternative. However, it could collide
+with ``DIST`` entries that are implicitly named after the URL filename
+part where URL-encoding is pretty common.
 
 
 File verification model


             reply	other threads:[~2017-11-25 20:49 UTC|newest]

Thread overview: 348+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-25 20:49 Michał Górny [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-09-26 11:44 [gentoo-commits] data/glep:master commit in: / Ulrich Müller
2024-09-08 19:29 Ulrich Müller
2024-09-08 19:21 Ulrich Müller
2024-07-22  5:43 Ulrich Müller
2024-07-22  5:43 ` Ulrich Müller
2024-07-16 16:18 Ulrich Müller
2024-04-16 18:36 Ulrich Müller
2024-04-16 18:36 Ulrich Müller
2024-04-16 18:36 Ulrich Müller
2024-04-16 18:36 Ulrich Müller
2024-02-27  9:30 Ulrich Müller
2023-12-02 12:02 Ulrich Müller
2023-12-02 12:02 Ulrich Müller
2023-09-16 16:20 Ulrich Müller
2023-09-15 15:30 Ulrich Müller
2023-05-14 19:14 Ulrich Müller
2023-05-14 19:14 Ulrich Müller
2023-05-08 19:16 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-05-08 17:12 Ulrich Müller
2023-04-16  8:08 [gentoo-commits] data/glep:glep39 " Ulrich Müller
2023-05-08 17:12 ` [gentoo-commits] data/glep:master " Ulrich Müller
2023-04-16  8:08 [gentoo-commits] data/glep:glep39 " Ulrich Müller
2023-05-08 17:12 ` [gentoo-commits] data/glep:master " Ulrich Müller
2023-04-16  8:08 [gentoo-commits] data/glep:glep39 " Ulrich Müller
2023-05-08 17:12 ` [gentoo-commits] data/glep:master " Ulrich Müller
2023-04-10 13:29 [gentoo-commits] data/glep:glep39 " Ulrich Müller
2023-03-12 20:10 ` [gentoo-commits] data/glep:master " Ulrich Müller
2023-04-10 13:29 [gentoo-commits] data/glep:glep39 " Ulrich Müller
2023-03-12 20:10 ` [gentoo-commits] data/glep:master " Ulrich Müller
2023-04-01  9:04 Ulrich Müller
2023-04-01  9:04 Ulrich Müller
2023-03-12 20:14 Ulrich Müller
2023-03-12 20:10 Ulrich Müller
2023-03-12 20:10 Ulrich Müller
2023-02-22  8:18 Ulrich Müller
2022-11-15 20:10 Michał Górny
2022-11-13 20:20 Ulrich Müller
2022-11-13 20:20 Ulrich Müller
2022-11-13 20:20 Ulrich Müller
2022-11-13 20:20 Ulrich Müller
2022-11-13 20:20 Ulrich Müller
2022-11-13 20:20 Ulrich Müller
2022-11-13 16:57 [gentoo-commits] data/glep:glep76 " Ulrich Müller
2022-11-03 12:40 ` [gentoo-commits] data/glep:master " Ulrich Müller
2022-11-13 16:57 [gentoo-commits] data/glep:glep76 " Ulrich Müller
2022-11-03 12:40 ` [gentoo-commits] data/glep:master " Ulrich Müller
2022-11-03 12:40 Ulrich Müller
2022-11-03 12:40 Ulrich Müller
2022-10-30 13:59 Michał Górny
2022-10-14 15:35 Michał Górny
2022-10-14 15:35 Michał Górny
2022-10-04  6:56 Michał Górny
2022-10-04  6:56 Michał Górny
2022-10-04  6:56 Michał Górny
2022-09-21 17:31 Michał Górny
2022-09-21 17:31 Michał Górny
2022-09-21 17:31 Michał Górny
2022-09-12  6:20 Michał Górny
2022-09-12  6:20 Michał Górny
2022-09-12  6:20 Michał Górny
2022-09-12  6:20 Michał Górny
2022-09-12  6:20 Michał Górny
2022-08-14 19:35 Ulrich Müller
2022-08-14 19:32 Ulrich Müller
2022-08-14 19:29 Ulrich Müller
2022-08-14 19:29 Ulrich Müller
2022-07-31 21:45 Ulrich Müller
2022-07-31 21:26 Ulrich Müller
2022-07-31 17:28 Ulrich Müller
2022-07-31 17:28 Ulrich Müller
2022-07-25 19:59 Ulrich Müller
2022-07-25 19:59 Ulrich Müller
2022-07-16  7:04 Ulrich Müller
2022-07-14 10:30 Ulrich Müller
2022-07-14 10:30 Ulrich Müller
2022-07-14 10:30 Ulrich Müller
2022-07-14 10:30 Ulrich Müller
2022-07-11 19:26 Ulrich Müller
2022-07-09 10:08 Ulrich Müller
2022-07-08 17:36 Ulrich Müller
2022-07-08 17:36 Ulrich Müller
2022-07-02  8:37 Ulrich Müller
2022-06-12 19:13 Ulrich Müller
2022-06-12 19:09 Ulrich Müller
2022-05-08  5:48 Ulrich Müller
2022-05-08  5:48 Ulrich Müller
2022-05-08  5:48 Ulrich Müller
2022-04-15  5:50 Ulrich Müller
2022-04-15  4:27 Robin H. Johnson
2022-01-10  6:14 Ulrich Müller
2021-09-12 19:24 Ulrich Müller
2021-09-11 14:03 Ulrich Müller
2021-08-08 20:06 Ulrich Müller
2021-07-12  7:04 Ulrich Müller
2021-06-20 16:42 Ulrich Müller
2021-06-17 20:08 Ulrich Müller
2021-06-09  7:32 Michał Górny
2021-05-31  8:44 Ulrich Müller
2021-05-31  8:12 Michał Górny
2021-03-14 19:57 Michał Górny
2021-01-04  7:12 Ulrich Müller
2020-05-10 19:36 Ulrich Müller
2020-05-06  8:30 Michał Górny
2020-05-01 19:49 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-22  9:00 Ulrich Müller
2020-04-12 17:37 Ulrich Müller
2019-12-21 13:05 Ulrich Müller
2019-12-08 19:38 Ulrich Müller
2019-12-05 15:07 Ulrich Müller
2019-11-24 10:23 Ulrich Müller
2019-11-24 10:23 Ulrich Müller
2019-11-15 11:59 Ulrich Müller
2019-11-11 10:00 Ulrich Müller
2019-11-11  9:49 Ulrich Müller
2019-11-11  9:49 Ulrich Müller
2019-11-07  6:35 Michał Górny
2019-11-06 14:36 Ulrich Müller
2019-10-07 10:58 Ulrich Müller
2019-07-30 18:48 Ulrich Müller
2019-07-29 14:51 Michał Górny
2019-07-22  7:15 Ulrich Müller
2019-07-15 19:01 Michał Górny
2019-06-18 13:04 Michał Górny
2019-06-18 12:34 Ulrich Müller
2019-06-18 12:24 Michał Górny
2019-06-17 20:14 Ulrich Müller
2019-06-10 16:33 Ulrich Müller
2019-06-10 15:58 Ulrich Müller
2019-05-13 18:44 Ulrich Müller
2019-05-13 18:44 Ulrich Müller
2019-05-02 16:40 Michał Górny
2019-04-14 21:04 Ulrich Müller
2019-04-14 12:54 Michał Górny
2019-04-03  8:12 Michał Górny
2019-04-02 13:43 Michał Górny
2019-03-14 13:10 Michał Górny
2019-03-14 13:10 Michał Górny
2019-03-03 20:52 Ulrich Müller
2019-03-03  7:16 Michał Górny
2019-02-23 15:35 Ulrich Müller
2019-02-23 10:26 Ulrich Müller
2018-12-21 10:16 Ulrich Müller
2018-12-08  9:41 Ulrich Müller
2018-12-01 12:59 Ulrich Müller
2018-12-01 12:59 Ulrich Müller
2018-12-01 10:43 Ulrich Müller
2018-11-17 13:08 Ulrich Müller
2018-10-28 18:50 Ulrich Müller
2018-10-27  7:31 Ulrich Müller
2018-10-27  7:31 Ulrich Müller
2018-10-21 11:10 Ulrich Müller
2018-10-21 11:10 Ulrich Müller
2018-10-21 11:10 Ulrich Müller
2018-10-21 11:10 Ulrich Müller
2018-09-15 23:02 Ulrich Müller
2018-09-12 11:43 Ulrich Müller
2018-09-12 11:29 Ulrich Müller
2018-09-08 13:42 Ulrich Müller
2018-08-31 15:35 [gentoo-commits] data/glep:glep-0076 " Ulrich Müller
2018-08-31 14:57 ` [gentoo-commits] data/glep:master " Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-08-31 14:57 Ulrich Müller
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-29 20:51 Michał Górny
2018-07-17 22:39 Ulrich Müller
2018-07-17 22:39 Ulrich Müller
2018-07-13 13:06 Ulrich Müller
2018-07-13 13:06 Ulrich Müller
2018-06-19 17:15 Ulrich Müller
2018-06-19 17:15 Ulrich Müller
2018-06-10 20:36 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-06-10 18:42 Ulrich Müller
2018-05-19 12:20 Ulrich Müller
2018-04-17 18:42 Ulrich Müller
2018-04-09 19:26 Ulrich Müller
2018-04-08 20:05 Ulrich Müller
2018-04-07 17:00 Ulrich Müller
2018-03-11 19:20 Michał Górny
2018-03-11 19:20 Michał Górny
2018-02-07 15:00 Ulrich Müller
2018-02-07 15:00 Ulrich Müller
2018-02-07 15:00 Ulrich Müller
2018-02-07 15:00 Ulrich Müller
2017-12-27 13:11 Ulrich Müller
2017-12-16  9:00 Michał Górny
2017-12-11  7:53 Ulrich Müller
2017-12-11  7:53 Ulrich Müller
2017-12-11  7:53 Ulrich Müller
2017-12-11  7:53 Ulrich Müller
2017-12-11  7:53 Ulrich Müller
2017-11-29 14:51 Michał Górny
2017-11-27 20:25 Ulrich Müller
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-25 20:49 Michał Górny
2017-11-21 20:44 Ulrich Müller
2017-11-18 22:21 Ulrich Müller
2017-11-13 17:35 [gentoo-commits] data/glep:glep-manifest " Michał Górny
2017-11-13 16:08 ` [gentoo-commits] data/glep:master " Michał Górny
2017-11-13 17:35 [gentoo-commits] data/glep:glep-manifest " Michał Górny
2017-11-13 16:08 ` [gentoo-commits] data/glep:master " Michał Górny
2017-11-13 17:34 Ulrich Müller
2017-11-13 16:08 Michał Górny
2017-11-13 16:08 Michał Górny
2017-11-13 14:45 Ulrich Müller
2017-11-12 21:17 Ulrich Müller
2017-11-12 21:17 Ulrich Müller
2017-11-12 21:17 Ulrich Müller
2017-11-12 21:17 Ulrich Müller
2017-11-10  8:11 Ulrich Müller
2017-11-09 14:14 Ulrich Müller
2017-11-09  6:03 Ulrich Müller
2017-11-07 21:05 Ulrich Müller
2017-11-06  7:48 Ulrich Müller
2017-11-04 18:03 Ulrich Müller
2017-11-04 18:03 Ulrich Müller
2017-11-04 17:24 Robin H. Johnson
2017-11-04 17:24 Robin H. Johnson
2017-11-03 16:49 Ulrich Müller
2017-11-02 19:09 [gentoo-commits] data/glep:glep-manifest " Michał Górny
2017-10-27 17:44 ` [gentoo-commits] data/glep:master " Michał Górny
2017-11-02 19:09 [gentoo-commits] data/glep:glep-manifest " Michał Górny
2017-10-27 17:44 ` [gentoo-commits] data/glep:master " Michał Górny
2017-10-28 11:57 Ulrich Müller
2017-10-28 10:12 Ulrich Müller
2017-10-19  5:24 Ulrich Müller
2017-10-18 11:38 Ulrich Müller
2017-10-18 11:38 Ulrich Müller
2017-10-17 12:27 Ulrich Müller
2017-10-17 12:27 Ulrich Müller
2017-10-15 19:47 Michał Górny
2017-10-15 19:47 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:45 Michał Górny
2017-10-15 19:18 Ulrich Müller
2017-10-15 19:18 Ulrich Müller
2017-10-15 19:18 Ulrich Müller
2017-10-15 19:18 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-14  9:20 Ulrich Müller
2017-10-12 12:17 Ulrich Müller
2017-10-12 12:17 Ulrich Müller
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny
2017-10-09 13:56 Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1511642957.b00ade7b6467a3ae066d66f6e4ce71fb10309710.mgorny@gentoo \
    --to=mgorny@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox