{"thread":{"id":"51070","subject":"[PATCH 0/1] trace2: Add variable description to git.txt","startedAt":"2019-05-10T19:44:28Z","lastAt":"2019-06-12T17:50:02Z","messageCount":13,"participants":["Derrick Stolee via GitGitGadget","SZEDER Gábor","Junio C Hamano","Derrick Stolee","Ævar Arnfjörð Bjarmason","Jeff Hostetler"],"isPatch":true,"patchVersion":1,"patchTotal":1},"messages":[{"id":"375311","messageId":"pull.189.git.gitgitgadget@gmail.com","threadId":"51070","inReplyTo":null,"subject":"[PATCH 0/1] trace2: Add variable description to git.txt","fromName":"Derrick Stolee via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2019-05-10T19:44:24Z","receivedAt":"2019-05-10T19:44:28Z","isPatch":true,"sender":{"key":"stolee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/570044?v=4"},"body":"Jeff is out this week, so I picked up this request from Szeder. I'm very\nopen to edit suggestions.\n\nThanks, -Stolee\n\nIn-Reply-To: 20190510172824.GR14763@szeder.dev\n\nDerrick Stolee (1):\n  trace2: Add variable description to git.txt\n\n Documentation/git.txt | 21 +++++++++++++++++++++\n 1 file changed, 21 insertions(+)\n\n\nbase-commit: c173542c84cdf5e71b393e91f9d9664a85f995b2\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-189%2Fderrickstolee%2Ftrace2-docs-v1\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-189/derrickstolee/trace2-docs-v1\nPull-Request: https://github.com/gitgitgadget/git/pull/189\n-- \ngitgitgadget\n"},{"id":"375312","messageId":"768bdf1c210fd34776f667b080a23eb6f9e17125.1557517464.git.gitgitgadget@gmail.com","threadId":"51070","inReplyTo":"pull.189.git.gitgitgadget@gmail.com","subject":"[PATCH 1/1] trace2: Add variable description to git.txt","fromName":"Derrick Stolee via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2019-05-10T19:44:26Z","receivedAt":"2019-05-10T19:44:29Z","isPatch":true,"sender":{"key":"stolee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/570044?v=4"},"body":"From: Derrick Stolee <dstolee@microsoft.com>\n\nDocumentation/technical/api-trace2.txt contains the full details\nof the trace2 API and the GIT_TR2* environment variables. However,\nmost environment variables are included in Documentation/git.txt,\nincluding the GIT_TRACE* variables.\n\nAdd a brief description of the GIT_TR2* variables with links to\nthe full technical details. The biggest difference from the\noriginal variables is that we can specify a Unix Domain Socket.\nMention this difference, but leave the details to the technical\ndocuments.\n\nReported-by: Szeder Gábor <szeder.dev@gmail.com>\nSigned-off-by: Derrick Stolee <dstolee@microsoft.com>\n---\n Documentation/git.txt | 21 +++++++++++++++++++++\n 1 file changed, 21 insertions(+)\n\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex 00156d64aa..e802886999 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -661,6 +661,27 @@ of clones and fetches.\n \tWhen a curl trace is enabled (see `GIT_TRACE_CURL` above), do not dump\n \tdata (that is, only dump info lines and headers).\n \n+`GIT_TR2`::\n+\tEnables more detailed trace messages from the \"trace2\" library.\n+\tOutput from `GIT_TR2` is a simple text-based format for human\n+\treadability.\n++\n+The `GIT_TR2` variables can take many values. Any value available to\n+the `GIT_TRACE` variables is also available to `GIT_TR2`. The `GIT_TR2`\n+variables can also specify a Unix Domain Socket. See\n+link:technical/api-trace2.html[Trace2 documentation] for full details.\n+\n+`GIT_TR2_EVENT`::\n+\tThis setting writes a JSON-based format that is suited for machine\n+\tinterpretation. See link:technical/api-trace2.html[Trace2 documentation]\n+\tfor full details.\n+\n+`GIT_TR2_PERF`::\n+\tIn addition to the text-based messages available in `GIT_TR2`, this\n+\tsetting writes a column-based format for understanding nesting\n+\tregions. See link:technical/api-trace2.html[Trace2 documentation]\n+\tfor full details.\n+\n `GIT_REDACT_COOKIES`::\n \tThis can be set to a comma-separated list of strings. When a curl trace\n \tis enabled (see `GIT_TRACE_CURL` above), whenever a \"Cookies:\" header\n-- \ngitgitgadget\n"},{"id":"375324","messageId":"20190510211502.GS14763@szeder.dev","threadId":"51070","inReplyTo":"768bdf1c210fd34776f667b080a23eb6f9e17125.1557517464.git.gitgitgadget@gmail.com","subject":"Re: [PATCH 1/1] trace2: Add variable description to git.txt","fromName":"SZEDER Gábor","fromEmail":"szeder.dev@gmail.com","sentAt":"2019-05-10T21:15:02Z","receivedAt":"2019-05-10T21:15:10Z","isPatch":true,"sender":{"key":"szeder.dev@gmail.com","avatar":"https://avatars.githubusercontent.com/u/116324?v=4"},"body":"\nThanks for the quick turnaround.\n\n\nOn Fri, May 10, 2019 at 12:44:26PM -0700, Derrick Stolee via GitGitGadget wrote:\n> From: Derrick Stolee <dstolee@microsoft.com>\n> \n> Documentation/technical/api-trace2.txt contains the full details\n> of the trace2 API and the GIT_TR2* environment variables. However,\n> most environment variables are included in Documentation/git.txt,\n> including the GIT_TRACE* variables.\n> \n> Add a brief description of the GIT_TR2* variables with links to\n> the full technical details. The biggest difference from the\n> original variables is that we can specify a Unix Domain Socket.\n> Mention this difference, but leave the details to the technical\n> documents.\n\nI think that it would be better to spell out the details instead of\nlinking to the technical docs, because the link will only really work\nif you view the docs in a browser and you have the full docs\navailable.  OTOH, in 'man git' there are no links to conveniently\nclick on, and the git packages from e.g. Ubuntu only include the man\npages, the technical docs and the docs in html format are in the\nseparate 'git-doc' package.\n\n\n> Reported-by: Szeder Gábor <szeder.dev@gmail.com>\n> Signed-off-by: Derrick Stolee <dstolee@microsoft.com>\n> ---\n>  Documentation/git.txt | 21 +++++++++++++++++++++\n>  1 file changed, 21 insertions(+)\n> \n> diff --git a/Documentation/git.txt b/Documentation/git.txt\n> index 00156d64aa..e802886999 100644\n> --- a/Documentation/git.txt\n> +++ b/Documentation/git.txt\n> @@ -661,6 +661,27 @@ of clones and fetches.\n>  \tWhen a curl trace is enabled (see `GIT_TRACE_CURL` above), do not dump\n>  \tdata (that is, only dump info lines and headers).\n>  \n> +`GIT_TR2`::\n> +\tEnables more detailed trace messages from the \"trace2\" library.\n> +\tOutput from `GIT_TR2` is a simple text-based format for human\n> +\treadability.\n> ++\n> +The `GIT_TR2` variables can take many values. Any value available to\n> +the `GIT_TRACE` variables is also available to `GIT_TR2`. The `GIT_TR2`\n> +variables can also specify a Unix Domain Socket. See\n> +link:technical/api-trace2.html[Trace2 documentation] for full details.\n> +\n> +`GIT_TR2_EVENT`::\n> +\tThis setting writes a JSON-based format that is suited for machine\n> +\tinterpretation. See link:technical/api-trace2.html[Trace2 documentation]\n> +\tfor full details.\n> +\n> +`GIT_TR2_PERF`::\n> +\tIn addition to the text-based messages available in `GIT_TR2`, this\n> +\tsetting writes a column-based format for understanding nesting\n> +\tregions. See link:technical/api-trace2.html[Trace2 documentation]\n> +\tfor full details.\n> +\n>  `GIT_REDACT_COOKIES`::\n>  \tThis can be set to a comma-separated list of strings. When a curl trace\n>  \tis enabled (see `GIT_TRACE_CURL` above), whenever a \"Cookies:\" header\n> -- \n> gitgitgadget\n"},{"id":"375879","messageId":"20190519144309.9597-2-szeder.dev@gmail.com","threadId":"51070","inReplyTo":"20190519144309.9597-1-szeder.dev@gmail.com","subject":"[PATCH 2/2] trace2: document the supported values of GIT_TRACE2* env variables","fromName":"SZEDER Gábor","fromEmail":"szeder.dev@gmail.com","sentAt":"2019-05-19T14:43:09Z","receivedAt":"2019-05-19T17:32:48Z","isPatch":true,"sender":{"key":"szeder.dev@gmail.com","avatar":"https://avatars.githubusercontent.com/u/116324?v=4"},"body":"The descriptions of the GIT_TRACE2* environment variables link to the\ntechnical docs for further details on the supported values.  However,\na link like this only really works if the docs are viewed in a browser\nand the full documentation is available.  OTOH, in 'man git' there are\nno links to conveniently click on, and distro-shipped git packages\ntend to include only the man pages, while the technical docs and the\ndocs in html format are in a separate 'git-doc' package.\n\nSo let's describe the supported values to make the manpage more\nself-contained, but still keep the references to the technical docs\nbecause the details of the SID, and the JSON and perf output formats\nare definitely beyond the scope of 'man git'.\n\nSigned-off-by: SZEDER Gábor <szeder.dev@gmail.com>\n---\n Documentation/git.txt | 43 +++++++++++++++++++++++++++++++++++--------\n 1 file changed, 35 insertions(+), 8 deletions(-)\n\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex fcf81e3acf..6ddc1e2ca6 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -665,21 +665,48 @@ of clones and fetches.\n \tOutput from `GIT_TRACE2` is a simple text-based format for human\n \treadability.\n +\n-The `GIT_TRACE2` variables can take many values. Any value available to\n-the `GIT_TRACE` variables is also available to `GIT_TRACE2`. The `GIT_TRACE2`\n-variables can also specify a Unix Domain Socket. See\n-link:technical/api-trace2.html[Trace2 documentation] for full details.\n+If this variable is set to \"1\", \"2\" or \"true\" (comparison\n+is case insensitive), trace messages will be printed to\n+stderr.\n++\n+If the variable is set to an integer value greater than 2\n+and lower than 10 (strictly) then Git will interpret this\n+value as an open file descriptor and will try to write the\n+trace messages into this file descriptor.\n++\n+Alternatively, if the variable is set to an absolute path\n+(starting with a '/' character), Git will interpret this\n+as a file path and will try to append the trace messages\n+to it.  If the path already exists and is a directory, the\n+trace messages will be written to files (one per process)\n+in that directory, named according to the last component\n+of the SID and an optional counter (to avoid filename\n+collisions).\n++\n+In addition, if the variable is set to\n+`af_unix:[<socket_type>:]<absolute-pathname>`, Git will try\n+to open the path as a Unix Domain Socket.  The socket type\n+can be either `stream` or `dgram`.\n++\n+Unsetting the variable, or setting it to empty, \"0\" or\n+\"false\" (case insensitive) disables trace messages.\n++\n+See link:technical/api-trace2.html[Trace2 documentation]\n+for full details.\n+\n \n `GIT_TRACE2_EVENT`::\n \tThis setting writes a JSON-based format that is suited for machine\n-\tinterpretation. See link:technical/api-trace2.html[Trace2 documentation]\n-\tfor full details.\n+\tinterpretation.\n+\tSee `GIT_TRACE2` for available trace output options and\n+\tlink:technical/api-trace2.html[Trace2 documentation] for full details.\n \n `GIT_TRACE2_PERF`::\n \tIn addition to the text-based messages available in `GIT_TRACE2`, this\n \tsetting writes a column-based format for understanding nesting\n-\tregions. See link:technical/api-trace2.html[Trace2 documentation]\n-\tfor full details.\n+\tregions.\n+\tSee `GIT_TRACE2` for available trace output options and\n+\tlink:technical/api-trace2.html[Trace2 documentation] for full details.\n \n `GIT_REDACT_COOKIES`::\n \tThis can be set to a comma-separated list of strings. When a curl trace\n-- \n2.22.0.rc1.424.g15834b9bb1\n\n"},{"id":"375882","messageId":"20190519144309.9597-1-szeder.dev@gmail.com","threadId":"51070","inReplyTo":"20190510211502.GS14763@szeder.dev","subject":"[PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"SZEDER Gábor","fromEmail":"szeder.dev@gmail.com","sentAt":"2019-05-19T14:43:08Z","receivedAt":"2019-05-19T17:44:56Z","isPatch":true,"sender":{"key":"szeder.dev@gmail.com","avatar":"https://avatars.githubusercontent.com/u/116324?v=4"},"body":"For an environment variable that is supposed to be set by users, the\nGIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n\nMost of the established GIT_* environment variables don't use\nabbreviations, and in case of the few that do (GIT_DIR,\nGIT_COMMON_DIR, GIT_DIFF_OPTS) it's quite obvious what the\nabbreviations (DIR and OPTS) stand for.  But what does TR stand for?\nTrack, traditional, trailer, transaction, transfer, transformation,\ntransition, translation, transplant, transport, traversal, tree,\ntrigger, truncate, trust, or ...?!\n\nThe trace2 facility, as the '2' suffix in its name suggests, is\nsupposed to eventually supercede Git's original trace facility.  It's\nreasonable to expect that the corresponding environment variables\nfollow suit, and after the original GIT_TRACE variables they are\ncalled GIT_TRACE2; there is no such thing is 'GIT_TR'.\n\nAll trace2-specific config variables are, very sensibly, in the\n'trace2' section, not in 'tr2'.\n\nOTOH, we don't gain anything at all by omitting the last three\ncharacters of \"trace\" from the names of these environment variables.\n\nSo let's rename all GIT_TR2* environment variables to GIT_TRACE2*,\nbefore they make their way into a stable release.\n\nSigned-off-by: SZEDER Gábor <szeder.dev@gmail.com>\n---\n\n Documentation/config/trace2.txt        | 18 +++++-----\n Documentation/git.txt                  | 14 ++++----\n Documentation/technical/api-trace2.txt | 46 +++++++++++++-------------\n t/t0001-init.sh                        |  2 +-\n t/t0210-trace2-normal.sh               | 24 +++++++-------\n t/t0211-trace2-perf.sh                 | 20 +++++------\n t/t0212-trace2-event.sh                | 16 ++++-----\n t/t0212/parse_events.perl              |  2 +-\n trace2.h                               |  2 +-\n trace2/tr2_cmd_name.c                  |  2 +-\n trace2/tr2_sid.c                       |  2 +-\n trace2/tr2_sysenv.c                    | 20 +++++------\n trace2/tr2_sysenv.h                    |  2 +-\n 13 files changed, 85 insertions(+), 85 deletions(-)\n\ndiff --git a/Documentation/config/trace2.txt b/Documentation/config/trace2.txt\nindex a5f409c1c1..2edbfb02fe 100644\n--- a/Documentation/config/trace2.txt\n+++ b/Documentation/config/trace2.txt\n@@ -4,17 +4,17 @@ command line arguments are not respected.\n \n trace2.normalTarget::\n \tThis variable controls the normal target destination.\n-\tIt may be overridden by the `GIT_TR2` environment variable.\n+\tIt may be overridden by the `GIT_TRACE2` environment variable.\n \tThe following table shows possible values.\n \n trace2.perfTarget::\n \tThis variable controls the performance target destination.\n-\tIt may be overridden by the `GIT_TR2_PERF` environment variable.\n+\tIt may be overridden by the `GIT_TRACE2_PERF` environment variable.\n \tThe following table shows possible values.\n \n trace2.eventTarget::\n \tThis variable controls the event target destination.\n-\tIt may be overridden by the `GIT_TR2_EVENT` environment variable.\n+\tIt may be overridden by the `GIT_TRACE2_EVENT` environment variable.\n \tThe following table shows possible values.\n +\n include::../trace2-target-values.txt[]\n@@ -22,22 +22,22 @@ include::../trace2-target-values.txt[]\n trace2.normalBrief::\n \tBoolean.  When true `time`, `filename`, and `line` fields are\n \tomitted from normal output.  May be overridden by the\n-\t`GIT_TR2_BRIEF` environment variable.  Defaults to false.\n+\t`GIT_TRACE2_BRIEF` environment variable.  Defaults to false.\n \n trace2.perfBrief::\n \tBoolean.  When true `time`, `filename`, and `line` fields are\n \tomitted from PERF output.  May be overridden by the\n-\t`GIT_TR2_PERF_BRIEF` environment variable.  Defaults to false.\n+\t`GIT_TRACE2_PERF_BRIEF` environment variable.  Defaults to false.\n \n trace2.eventBrief::\n \tBoolean.  When true `time`, `filename`, and `line` fields are\n \tomitted from event output.  May be overridden by the\n-\t`GIT_TR2_EVENT_BRIEF` environment variable.  Defaults to false.\n+\t`GIT_TRACE2_EVENT_BRIEF` environment variable.  Defaults to false.\n \n trace2.eventNesting::\n \tInteger.  Specifies desired depth of nested regions in the\n \tevent output.  Regions deeper than this value will be\n-\tomitted.  May be overridden by the `GIT_TR2_EVENT_NESTING`\n+\tomitted.  May be overridden by the `GIT_TRACE2_EVENT_NESTING`\n \tenvironment variable.  Defaults to 2.\n \n trace2.configParams::\n@@ -45,7 +45,7 @@ trace2.configParams::\n \tsettings that should be recorded in the trace2 output.\n \tFor example, `core.*,remote.*.url` would cause the trace2\n \toutput to contain events listing each configured remote.\n-\tMay be overridden by the `GIT_TR2_CONFIG_PARAMS` environment\n+\tMay be overridden by the `GIT_TRACE2_CONFIG_PARAMS` environment\n \tvariable.  Unset by default.\n \n trace2.destinationDebug::\n@@ -53,4 +53,4 @@ trace2.destinationDebug::\n \ttrace target destination cannot be opened for writing.\n \tBy default, these errors are suppressed and tracing is\n \tsilently disabled.  May be overridden by the\n-\t`GIT_TR2_DST_DEBUG` environment variable.\n+\t`GIT_TRACE2_DST_DEBUG` environment variable.\ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex 72adfcc5e2..fcf81e3acf 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -660,23 +660,23 @@ of clones and fetches.\n \tWhen a curl trace is enabled (see `GIT_TRACE_CURL` above), do not dump\n \tdata (that is, only dump info lines and headers).\n \n-`GIT_TR2`::\n+`GIT_TRACE2`::\n \tEnables more detailed trace messages from the \"trace2\" library.\n-\tOutput from `GIT_TR2` is a simple text-based format for human\n+\tOutput from `GIT_TRACE2` is a simple text-based format for human\n \treadability.\n +\n-The `GIT_TR2` variables can take many values. Any value available to\n-the `GIT_TRACE` variables is also available to `GIT_TR2`. The `GIT_TR2`\n+The `GIT_TRACE2` variables can take many values. Any value available to\n+the `GIT_TRACE` variables is also available to `GIT_TRACE2`. The `GIT_TRACE2`\n variables can also specify a Unix Domain Socket. See\n link:technical/api-trace2.html[Trace2 documentation] for full details.\n \n-`GIT_TR2_EVENT`::\n+`GIT_TRACE2_EVENT`::\n \tThis setting writes a JSON-based format that is suited for machine\n \tinterpretation. See link:technical/api-trace2.html[Trace2 documentation]\n \tfor full details.\n \n-`GIT_TR2_PERF`::\n-\tIn addition to the text-based messages available in `GIT_TR2`, this\n+`GIT_TRACE2_PERF`::\n+\tIn addition to the text-based messages available in `GIT_TRACE2`, this\n \tsetting writes a column-based format for understanding nesting\n \tregions. See link:technical/api-trace2.html[Trace2 documentation]\n \tfor full details.\ndiff --git a/Documentation/technical/api-trace2.txt b/Documentation/technical/api-trace2.txt\nindex 9e585b8e79..23c3cc7a37 100644\n--- a/Documentation/technical/api-trace2.txt\n+++ b/Documentation/technical/api-trace2.txt\n@@ -23,7 +23,7 @@ formats in the future.  This might be used to define a binary format,\n for example.\n \n Trace2 is controlled using `trace2.*` config values in the system and\n-global config files and `GIT_TR2*` environment variables.  Trace2 does\n+global config files and `GIT_TRACE2*` environment variables.  Trace2 does\n not read from repo local or worktree config files or respect `-c`\n command line config settings.\n \n@@ -42,7 +42,7 @@ config setting.\n For example\n \n ------------\n-$ export GIT_TR2=~/log.normal\n+$ export GIT_TRACE2=~/log.normal\n $ git version\n git version 2.20.1.155.g426c96fcdb\n ------------\n@@ -71,13 +71,13 @@ $ cat ~/log.normal\n The performance format target (PERF) is a column-based format to\n replace GIT_TRACE_PERFORMANCE and is suitable for development and\n testing, possibly to complement tools like gprof.  This format is\n-enabled with the `GIT_TR2_PERF` environment variable or the\n+enabled with the `GIT_TRACE2_PERF` environment variable or the\n `trace2.perfTarget` system or global config setting.\n \n For example\n \n ------------\n-$ export GIT_TR2_PERF=~/log.perf\n+$ export GIT_TRACE2_PERF=~/log.perf\n $ git version\n git version 2.20.1.155.g426c96fcdb\n ------------\n@@ -104,14 +104,14 @@ $ cat ~/log.perf\n === The Event Format Target\n \n The event format target is a JSON-based format of event data suitable\n-for telemetry analysis.  This format is enabled with the `GIT_TR2_EVENT`\n+for telemetry analysis.  This format is enabled with the `GIT_TRACE2_EVENT`\n environment variable or the `trace2.eventTarget` system or global config\n setting.\n \n For example\n \n ------------\n-$ export GIT_TR2_EVENT=~/log.event\n+$ export GIT_TRACE2_EVENT=~/log.event\n $ git version\n git version 2.20.1.155.g426c96fcdb\n ------------\n@@ -273,7 +273,7 @@ significantly affects program performance or behavior, such as\n \tEmits a \"def_param\" messages for \"important\" configuration\n \tsettings.\n +\n-The environment variable `GIT_TR2_CONFIG_PARAMS` or the `trace2.configParams`\n+The environment variable `GIT_TRACE2_CONFIG_PARAMS` or the `trace2.configParams`\n config value can be set to a\n list of patterns of important configuration settings, for example:\n `core.*,remote.*.url`.  This function will iterate over all config\n@@ -465,7 +465,7 @@ Events are written as lines of the form:\n Note that this may contain embedded LF or CRLF characters that are\n not escaped, so the event may spill across multiple lines.\n \n-If `GIT_TR2_BRIEF` or `trace2.normalBrief` is true, the `time`, `filename`,\n+If `GIT_TRACE2_BRIEF` or `trace2.normalBrief` is true, the `time`, `filename`,\n and `line` fields are omitted.\n \n This target is intended to be more of a summary (like GIT_TRACE) and\n@@ -533,7 +533,7 @@ This field is in anticipation of in-proc submodules in the future.\n 15:33:33.532712 wt-status.c:2331                  | d0 | main                     | region_leave | r1  |  0.127568 |  0.001504 | status     | label:print\n ------------\n \n-If `GIT_TR2_PERF_BRIEF` or `trace2.perfBrief` is true, the `time`, `file`,\n+If `GIT_TRACE2_PERF_BRIEF` or `trace2.perfBrief` is true, the `time`, `file`,\n and `line` fields are omitted.\n \n ------------\n@@ -598,7 +598,7 @@ The following key/value pairs are common to all events:\n `\"repo\":<repo-id>`::\n \twhen present, is the integer repo-id as described previously.\n \n-If `GIT_TR2_EVENT_BRIEF` or `trace2.eventBrief` is true, the `file`\n+If `GIT_TRACE2_EVENT_BRIEF` or `trace2.eventBrief` is true, the `file`\n and `line` fields are omitted from all events and the `time` field is\n only present on the \"start\" and \"atexit\" events.\n \n@@ -911,7 +911,7 @@ visited.\n The `category` field may be used in a future enhancement to\n do category-based filtering.\n +\n-`GIT_TR2_EVENT_NESTING` or `trace2.eventNesting` can be used to\n+`GIT_TRACE2_EVENT_NESTING` or `trace2.eventNesting` can be used to\n filter deeply nested regions and data events.  It defaults to \"2\".\n \n `\"region_leave\"`::\n@@ -1039,8 +1039,8 @@ rev-list, and gc.  This example also shows that fetch took\n 5.199 seconds and of that 4.932 was in ssh.\n +\n ----------------\n-$ export GIT_TR2_BRIEF=1\n-$ export GIT_TR2=~/log.normal\n+$ export GIT_TRACE2_BRIEF=1\n+$ export GIT_TRACE2=~/log.normal\n $ git fetch origin\n ...\n ----------------\n@@ -1075,8 +1075,8 @@ its name as \"gc\", it also reports the hierarchy as \"fetch/gc\".\n indented for clarity.)\n +\n ----------------\n-$ export GIT_TR2_BRIEF=1\n-$ export GIT_TR2=~/log.normal\n+$ export GIT_TRACE2_BRIEF=1\n+$ export GIT_TRACE2=~/log.normal\n $ git fetch origin\n ...\n ----------------\n@@ -1134,8 +1134,8 @@ In this example, scanning for untracked files ran from +0.012568 to\n +0.027149 (since the process started) and took 0.014581 seconds.\n +\n ----------------\n-$ export GIT_TR2_PERF_BRIEF=1\n-$ export GIT_TR2_PERF=~/log.perf\n+$ export GIT_TRACE2_PERF_BRIEF=1\n+$ export GIT_TRACE2_PERF=~/log.perf\n $ git status\n ...\n \n@@ -1180,8 +1180,8 @@ static enum path_treatment read_directory_recursive(struct dir_struct *dir,\n We can further investigate the time spent scanning for untracked files.\n +\n ----------------\n-$ export GIT_TR2_PERF_BRIEF=1\n-$ export GIT_TR2_PERF=~/log.perf\n+$ export GIT_TRACE2_PERF_BRIEF=1\n+$ export GIT_TRACE2_PERF=~/log.perf\n $ git status\n ...\n $ cat ~/log.perf\n@@ -1236,8 +1236,8 @@ int read_index_from(struct index_state *istate, const char *path,\n This example shows that the index contained 3552 entries.\n +\n ----------------\n-$ export GIT_TR2_PERF_BRIEF=1\n-$ export GIT_TR2_PERF=~/log.perf\n+$ export GIT_TRACE2_PERF_BRIEF=1\n+$ export GIT_TRACE2_PERF=~/log.perf\n $ git status\n ...\n $ cat ~/log.perf\n@@ -1310,8 +1310,8 @@ Data events are tagged with the active thread name.  They are used\n to report the per-thread parameters.\n +\n ----------------\n-$ export GIT_TR2_PERF_BRIEF=1\n-$ export GIT_TR2_PERF=~/log.perf\n+$ export GIT_TRACE2_PERF_BRIEF=1\n+$ export GIT_TRACE2_PERF=~/log.perf\n $ git status\n ...\n $ cat ~/log.perf\ndiff --git a/t/t0001-init.sh b/t/t0001-init.sh\nindex 1f462204ea..77a224aafb 100755\n--- a/t/t0001-init.sh\n+++ b/t/t0001-init.sh\n@@ -93,7 +93,7 @@ test_expect_success 'No extra GIT_* on alias scripts' '\n \t\tsed -n \\\n \t\t\t-e \"/^GIT_PREFIX=/d\" \\\n \t\t\t-e \"/^GIT_TEXTDOMAINDIR=/d\" \\\n-\t\t\t-e \"/^GIT_TR2_PARENT/d\" \\\n+\t\t\t-e \"/^GIT_TRACE2_PARENT/d\" \\\n \t\t\t-e \"/^GIT_/s/=.*//p\" |\n \t\tsort\n \tEOF\ndiff --git a/t/t0210-trace2-normal.sh b/t/t0210-trace2-normal.sh\nindex 71194a3623..ce7574edb1 100755\n--- a/t/t0210-trace2-normal.sh\n+++ b/t/t0210-trace2-normal.sh\n@@ -4,9 +4,9 @@ test_description='test trace2 facility (normal target)'\n . ./test-lib.sh\n \n # Turn off any inherited trace2 settings for this test.\n-sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT\n-sane_unset GIT_TR2_BRIEF\n-sane_unset GIT_TR2_CONFIG_PARAMS\n+sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT\n+sane_unset GIT_TRACE2_BRIEF\n+sane_unset GIT_TRACE2_CONFIG_PARAMS\n \n # Add t/helper directory to PATH so that we can use a relative\n # path to run nested instances of test-tool.exe (see 004child).\n@@ -27,12 +27,12 @@ V=$(git version | sed -e 's/^git version //') && export V\n # to whatever filtering that target decides to do).\n # This script tests the normal target in isolation.\n #\n-# Defer setting GIT_TR2 until the actual command line we want to test\n+# Defer setting GIT_TRACE2 until the actual command line we want to test\n # because hidden git and test-tool commands run by the test harness\n # can contaminate our output.\n \n # Enable \"brief\" feature which turns off \"<clock> <file>:<line> \" prefix.\n-GIT_TR2_BRIEF=1 && export GIT_TR2_BRIEF\n+GIT_TRACE2_BRIEF=1 && export GIT_TRACE2_BRIEF\n \n # Basic tests of the trace2 normal stream.  Since this stream is used\n # primarily with printf-style debugging/tracing, we do limited testing\n@@ -54,7 +54,7 @@ GIT_TR2_BRIEF=1 && export GIT_TR2_BRIEF\n \n test_expect_success 'normal stream, return code 0' '\n \ttest_when_finished \"rm trace.normal actual expect\" &&\n-\tGIT_TR2=\"$(pwd)/trace.normal\" test-tool trace2 001return 0 &&\n+\tGIT_TRACE2=\"$(pwd)/trace.normal\" test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <trace.normal >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -68,7 +68,7 @@ test_expect_success 'normal stream, return code 0' '\n \n test_expect_success 'normal stream, return code 1' '\n \ttest_when_finished \"rm trace.normal actual expect\" &&\n-\ttest_must_fail env GIT_TR2=\"$(pwd)/trace.normal\" test-tool trace2 001return 1 &&\n+\ttest_must_fail env GIT_TRACE2=\"$(pwd)/trace.normal\" test-tool trace2 001return 1 &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <trace.normal >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -83,7 +83,7 @@ test_expect_success 'normal stream, return code 1' '\n test_expect_success 'automatic filename' '\n \ttest_when_finished \"rm -r traces actual expect\" &&\n \tmkdir traces &&\n-\tGIT_TR2=\"$(pwd)/traces\" test-tool trace2 001return 0 &&\n+\tGIT_TRACE2=\"$(pwd)/traces\" test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <\"$(ls traces/*)\" >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -101,7 +101,7 @@ test_expect_success 'automatic filename' '\n \n test_expect_success 'normal stream, exit code 0' '\n \ttest_when_finished \"rm trace.normal actual expect\" &&\n-\tGIT_TR2=\"$(pwd)/trace.normal\" test-tool trace2 002exit 0 &&\n+\tGIT_TRACE2=\"$(pwd)/trace.normal\" test-tool trace2 002exit 0 &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <trace.normal >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -115,7 +115,7 @@ test_expect_success 'normal stream, exit code 0' '\n \n test_expect_success 'normal stream, exit code 1' '\n \ttest_when_finished \"rm trace.normal actual expect\" &&\n-\ttest_must_fail env GIT_TR2=\"$(pwd)/trace.normal\" test-tool trace2 002exit 1 &&\n+\ttest_must_fail env GIT_TRACE2=\"$(pwd)/trace.normal\" test-tool trace2 002exit 1 &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <trace.normal >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -133,7 +133,7 @@ test_expect_success 'normal stream, exit code 1' '\n \n test_expect_success 'normal stream, error event' '\n \ttest_when_finished \"rm trace.normal actual expect\" &&\n-\tGIT_TR2=\"$(pwd)/trace.normal\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n+\tGIT_TRACE2=\"$(pwd)/trace.normal\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n \tperl \"$TEST_DIRECTORY/t0210/scrub_normal.perl\" <trace.normal >actual &&\n \tcat >expect <<-EOF &&\n \t\tversion $V\n@@ -147,7 +147,7 @@ test_expect_success 'normal stream, error event' '\n \ttest_cmp expect actual\n '\n \n-sane_unset GIT_TR2_BRIEF\n+sane_unset GIT_TRACE2_BRIEF\n \n # Now test without environment variables and get all Trace2 settings\n # from the global config.\ndiff --git a/t/t0211-trace2-perf.sh b/t/t0211-trace2-perf.sh\nindex b501e867af..2c3ad6e8c1 100755\n--- a/t/t0211-trace2-perf.sh\n+++ b/t/t0211-trace2-perf.sh\n@@ -4,9 +4,9 @@ test_description='test trace2 facility (perf target)'\n . ./test-lib.sh\n \n # Turn off any inherited trace2 settings for this test.\n-sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT\n-sane_unset GIT_TR2_PERF_BRIEF\n-sane_unset GIT_TR2_CONFIG_PARAMS\n+sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT\n+sane_unset GIT_TRACE2_PERF_BRIEF\n+sane_unset GIT_TRACE2_CONFIG_PARAMS\n \n # Add t/helper directory to PATH so that we can use a relative\n # path to run nested instances of test-tool.exe (see 004child).\n@@ -27,13 +27,13 @@ V=$(git version | sed -e 's/^git version //') && export V\n # to whatever filtering that target decides to do).\n # Test each target independently.\n #\n-# Defer setting GIT_TR2_PERF until the actual command we want to\n+# Defer setting GIT_TRACE2_PERF until the actual command we want to\n # test because hidden git and test-tool commands in the test\n # harness can contaminate our output.\n \n # Enable \"brief\" feature which turns off the prefix:\n #     \"<clock> <file>:<line> | <nr_parents> | \"\n-GIT_TR2_PERF_BRIEF=1 && export GIT_TR2_PERF_BRIEF\n+GIT_TRACE2_PERF_BRIEF=1 && export GIT_TRACE2_PERF_BRIEF\n \n # Repeat some of the t0210 tests using the perf target stream instead of\n # the normal stream.\n@@ -46,7 +46,7 @@ GIT_TR2_PERF_BRIEF=1 && export GIT_TR2_PERF_BRIEF\n \n test_expect_success 'perf stream, return code 0' '\n \ttest_when_finished \"rm trace.perf actual expect\" &&\n-\tGIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 0 &&\n+\tGIT_TRACE2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n \tcat >expect <<-EOF &&\n \t\td0|main|version|||||$V\n@@ -60,7 +60,7 @@ test_expect_success 'perf stream, return code 0' '\n \n test_expect_success 'perf stream, return code 1' '\n \ttest_when_finished \"rm trace.perf actual expect\" &&\n-\ttest_must_fail env GIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 1 &&\n+\ttest_must_fail env GIT_TRACE2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 1 &&\n \tperl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n \tcat >expect <<-EOF &&\n \t\td0|main|version|||||$V\n@@ -78,7 +78,7 @@ test_expect_success 'perf stream, return code 1' '\n \n test_expect_success 'perf stream, error event' '\n \ttest_when_finished \"rm trace.perf actual expect\" &&\n-\tGIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n+\tGIT_TRACE2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n \tperl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n \tcat >expect <<-EOF &&\n \t\td0|main|version|||||$V\n@@ -124,7 +124,7 @@ test_expect_success 'perf stream, error event' '\n \n test_expect_success 'perf stream, child processes' '\n \ttest_when_finished \"rm trace.perf actual expect\" &&\n-\tGIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&\n+\tGIT_TRACE2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n \tcat >expect <<-EOF &&\n \t\td0|main|version|||||$V\n@@ -150,7 +150,7 @@ test_expect_success 'perf stream, child processes' '\n \ttest_cmp expect actual\n '\n \n-sane_unset GIT_TR2_PERF_BRIEF\n+sane_unset GIT_TRACE2_PERF_BRIEF\n \n # Now test without environment variables and get all Trace2 settings\n # from the global config.\ndiff --git a/t/t0212-trace2-event.sh b/t/t0212-trace2-event.sh\nindex 59adae8123..ff5b9cc729 100755\n--- a/t/t0212-trace2-event.sh\n+++ b/t/t0212-trace2-event.sh\n@@ -4,9 +4,9 @@ test_description='test trace2 facility'\n . ./test-lib.sh\n \n # Turn off any inherited trace2 settings for this test.\n-sane_unset GIT_TR2 GIT_TR2_PERF GIT_TR2_EVENT\n-sane_unset GIT_TR2_BARE\n-sane_unset GIT_TR2_CONFIG_PARAMS\n+sane_unset GIT_TRACE2 GIT_TRACE2_PERF GIT_TRACE2_EVENT\n+sane_unset GIT_TRACE2_BARE\n+sane_unset GIT_TRACE2_CONFIG_PARAMS\n \n perl -MJSON::PP -e 0 >/dev/null 2>&1 && test_set_prereq JSON_PP\n \n@@ -29,7 +29,7 @@ V=$(git version | sed -e 's/^git version //') && export V\n # to whatever filtering that target decides to do).\n # Test each target independently.\n #\n-# Defer setting GIT_TR2_PERF until the actual command we want to\n+# Defer setting GIT_TRACE2_PERF until the actual command we want to\n # test because hidden git and test-tool commands in the test\n # harness can contaminate our output.\n \n@@ -42,7 +42,7 @@ V=$(git version | sed -e 's/^git version //') && export V\n \n test_expect_success JSON_PP 'event stream, error event' '\n \ttest_when_finished \"rm trace.event actual expect\" &&\n-\tGIT_TR2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n+\tGIT_TRACE2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 003error \"hello world\" \"this is a test\" &&\n \tperl \"$TEST_DIRECTORY/t0212/parse_events.perl\" <trace.event >actual &&\n \tsed -e \"s/^|//\" >expect <<-EOF &&\n \t|VAR1 = {\n@@ -79,7 +79,7 @@ test_expect_success JSON_PP 'event stream, error event' '\n \n test_expect_success JSON_PP 'event stream, return code 0' '\n \ttest_when_finished \"rm trace.event actual expect\" &&\n-\tGIT_TR2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&\n+\tGIT_TRACE2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 004child test-tool trace2 004child test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0212/parse_events.perl\" <trace.event >actual &&\n \tsed -e \"s/^|//\" >expect <<-EOF &&\n \t|VAR1 = {\n@@ -168,7 +168,7 @@ test_expect_success JSON_PP 'event stream, list config' '\n \ttest_when_finished \"rm trace.event actual expect\" &&\n \tgit config --local t0212.abc 1 &&\n \tgit config --local t0212.def \"hello world\" &&\n-\tGIT_TR2_EVENT=\"$(pwd)/trace.event\" GIT_TR2_CONFIG_PARAMS=\"t0212.*\" test-tool trace2 001return 0 &&\n+\tGIT_TRACE2_EVENT=\"$(pwd)/trace.event\" GIT_TRACE2_CONFIG_PARAMS=\"t0212.*\" test-tool trace2 001return 0 &&\n \tperl \"$TEST_DIRECTORY/t0212/parse_events.perl\" <trace.event >actual &&\n \tsed -e \"s/^|//\" >expect <<-EOF &&\n \t|VAR1 = {\n@@ -201,7 +201,7 @@ test_expect_success JSON_PP 'event stream, list config' '\n \n test_expect_success JSON_PP 'basic trace2_data' '\n \ttest_when_finished \"rm trace.event actual expect\" &&\n-\tGIT_TR2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 006data test_category k1 v1 test_category k2 v2 &&\n+\tGIT_TRACE2_EVENT=\"$(pwd)/trace.event\" test-tool trace2 006data test_category k1 v1 test_category k2 v2 &&\n \tperl \"$TEST_DIRECTORY/t0212/parse_events.perl\" <trace.event >actual &&\n \tsed -e \"s/^|//\" >expect <<-EOF &&\n \t|VAR1 = {\ndiff --git a/t/t0212/parse_events.perl b/t/t0212/parse_events.perl\nindex a2776ba216..6584bb5634 100644\n--- a/t/t0212/parse_events.perl\n+++ b/t/t0212/parse_events.perl\n@@ -26,7 +26,7 @@\n \n # The version of the trace2 event target format that we understand.\n # This is reported in the 'version' event in the 'evt' field.\n-# It comes from the GIT_TR2_EVENT_VERSION macro in trace2/tr2_tgt_event.c\n+# It comes from the GIT_TRACE2_EVENT_VERSION macro in trace2/tr2_tgt_event.c\n my $evt_version = '1';\n \n my $show_children = 1;\ndiff --git a/trace2.h b/trace2.h\nindex f189ef5984..050bf3c8c1 100644\n--- a/trace2.h\n+++ b/trace2.h\n@@ -130,7 +130,7 @@ void trace2_cmd_alias_fl(const char *file, int line, const char *alias,\n  * list of patterns configured important.  For example:\n  *     git config --system trace2.configParams 'core.*,remote.*.url'\n  * or:\n- *     GIT_TR2_CONFIG_PARAMS=core.*,remote.*.url\"\n+ *     GIT_TRACE2_CONFIG_PARAMS=core.*,remote.*.url\"\n  *\n  * Note: this routine does a read-only iteration on the config data\n  * (using read_early_config()), so it must not be called until enough\ndiff --git a/trace2/tr2_cmd_name.c b/trace2/tr2_cmd_name.c\nindex e999592b4c..dd313204f5 100644\n--- a/trace2/tr2_cmd_name.c\n+++ b/trace2/tr2_cmd_name.c\n@@ -1,7 +1,7 @@\n #include \"cache.h\"\n #include \"trace2/tr2_cmd_name.h\"\n \n-#define TR2_ENVVAR_PARENT_NAME \"GIT_TR2_PARENT_NAME\"\n+#define TR2_ENVVAR_PARENT_NAME \"GIT_TRACE2_PARENT_NAME\"\n \n static struct strbuf tr2cmdname_hierarchy = STRBUF_INIT;\n \ndiff --git a/trace2/tr2_sid.c b/trace2/tr2_sid.c\nindex 5047095478..6948fd4108 100644\n--- a/trace2/tr2_sid.c\n+++ b/trace2/tr2_sid.c\n@@ -2,7 +2,7 @@\n #include \"trace2/tr2_tbuf.h\"\n #include \"trace2/tr2_sid.h\"\n \n-#define TR2_ENVVAR_PARENT_SID \"GIT_TR2_PARENT_SID\"\n+#define TR2_ENVVAR_PARENT_SID \"GIT_TRACE2_PARENT_SID\"\n \n static struct strbuf tr2sid_buf = STRBUF_INIT;\n static int tr2sid_nr_git_parents;\ndiff --git a/trace2/tr2_sysenv.c b/trace2/tr2_sysenv.c\nindex 9025b86303..5958cfc424 100644\n--- a/trace2/tr2_sysenv.c\n+++ b/trace2/tr2_sysenv.c\n@@ -21,33 +21,33 @@ struct tr2_sysenv_entry {\n  * The strings in this table are constant and must match the published\n  * config and environment variable names as described in the documentation.\n  *\n- * We do not define entries for the GIT_TR2_PARENT_* environment\n+ * We do not define entries for the GIT_TRACE2_PARENT_* environment\n  * variables because they are transient and used to pass information\n  * from parent to child git processes, rather than settings.\n  */\n /* clang-format off */\n static struct tr2_sysenv_entry tr2_sysenv_settings[] = {\n-\t[TR2_SYSENV_CFG_PARAM]     = { \"GIT_TR2_CONFIG_PARAMS\",\n+\t[TR2_SYSENV_CFG_PARAM]     = { \"GIT_TRACE2_CONFIG_PARAMS\",\n \t\t\t\t       \"trace2.configparams\" },\n \n-\t[TR2_SYSENV_DST_DEBUG]     = { \"GIT_TR2_DST_DEBUG\",\n+\t[TR2_SYSENV_DST_DEBUG]     = { \"GIT_TRACE2_DST_DEBUG\",\n \t\t\t\t       \"trace2.destinationdebug\" },\n \n-\t[TR2_SYSENV_NORMAL]        = { \"GIT_TR2\",\n+\t[TR2_SYSENV_NORMAL]        = { \"GIT_TRACE2\",\n \t\t\t\t       \"trace2.normaltarget\" },\n-\t[TR2_SYSENV_NORMAL_BRIEF]  = { \"GIT_TR2_BRIEF\",\n+\t[TR2_SYSENV_NORMAL_BRIEF]  = { \"GIT_TRACE2_BRIEF\",\n \t\t\t\t       \"trace2.normalbrief\" },\n \n-\t[TR2_SYSENV_EVENT]         = { \"GIT_TR2_EVENT\",\n+\t[TR2_SYSENV_EVENT]         = { \"GIT_TRACE2_EVENT\",\n \t\t\t\t       \"trace2.eventtarget\" },\n-\t[TR2_SYSENV_EVENT_BRIEF]   = { \"GIT_TR2_EVENT_BRIEF\",\n+\t[TR2_SYSENV_EVENT_BRIEF]   = { \"GIT_TRACE2_EVENT_BRIEF\",\n \t\t\t\t       \"trace2.eventbrief\" },\n-\t[TR2_SYSENV_EVENT_NESTING] = { \"GIT_TR2_EVENT_NESTING\",\n+\t[TR2_SYSENV_EVENT_NESTING] = { \"GIT_TRACE2_EVENT_NESTING\",\n \t\t\t\t       \"trace2.eventnesting\" },\n \n-\t[TR2_SYSENV_PERF]          = { \"GIT_TR2_PERF\",\n+\t[TR2_SYSENV_PERF]          = { \"GIT_TRACE2_PERF\",\n \t\t\t\t       \"trace2.perftarget\" },\n-\t[TR2_SYSENV_PERF_BRIEF]    = { \"GIT_TR2_PERF_BRIEF\",\n+\t[TR2_SYSENV_PERF_BRIEF]    = { \"GIT_TRACE2_PERF_BRIEF\",\n \t\t\t\t       \"trace2.perfbrief\" },\n };\n /* clang-format on */\ndiff --git a/trace2/tr2_sysenv.h b/trace2/tr2_sysenv.h\nindex 369b20bd87..8dd82a7a56 100644\n--- a/trace2/tr2_sysenv.h\n+++ b/trace2/tr2_sysenv.h\n@@ -7,7 +7,7 @@\n  *\n  * Note that this set does not contain any of the transient\n  * environment variables used to pass information from parent\n- * to child git processes, such \"GIT_TR2_PARENT_SID\".\n+ * to child git processes, such \"GIT_TRACE2_PARENT_SID\".\n  */\n enum tr2_sysenv_variable {\n \tTR2_SYSENV_CFG_PARAM = 0,\n-- \n2.22.0.rc1.424.g15834b9bb1\n\n"},{"id":"376314","messageId":"xmqq36ky5ywr.fsf@gitster-ct.c.googlers.com","threadId":"51070","inReplyTo":"20190519144309.9597-1-szeder.dev@gmail.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2019-05-28T16:25:40Z","receivedAt":"2019-05-28T16:25:45Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"SZEDER Gábor <szeder.dev@gmail.com> writes:\n\n> For an environment variable that is supposed to be set by users, the\n> GIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n\nFWIW, I personally am in favor of this change and would prefer to see\nthis done before the use of the names with unguessable abbreviation\ngets ingrained too deeply.  \n\nI do not see any objections around these two patches after waiting\nfor a week or so, but I do not see any Yay!s, either, so ...\n\n> OTOH, we don't gain anything at all by omitting the last three\n> characters of \"trace\" from the names of these environment variables.\n>\n> So let's rename all GIT_TR2* environment variables to GIT_TRACE2*,\n> before they make their way into a stable release.\n"},{"id":"376320","messageId":"f03e2ba6-36d8-d82b-3349-61341365b94e@gmail.com","threadId":"51070","inReplyTo":"xmqq36ky5ywr.fsf@gitster-ct.c.googlers.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Derrick Stolee","fromEmail":"stolee@gmail.com","sentAt":"2019-05-28T16:46:01Z","receivedAt":"2019-05-28T16:46:04Z","isPatch":true,"sender":{"key":"stolee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/570044?v=4"},"body":"On 5/28/2019 12:25 PM, Junio C Hamano wrote:\n> SZEDER Gábor <szeder.dev@gmail.com> writes:\n> \n>> For an environment variable that is supposed to be set by users, the\n>> GIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n> \n> FWIW, I personally am in favor of this change and would prefer to see\n> this done before the use of the names with unguessable abbreviation\n> gets ingrained too deeply.  \n> \n> I do not see any objections around these two patches after waiting\n> for a week or so, but I do not see any Yay!s, either, so ...\n\nTalking with Jeff offline, we have no objections to the new names.\n\nWe'll need to do some follow-up work on our side as we update our\nversion of Git, but that's not an issue.\n\nThanks,\n-Stolee\n\n"},{"id":"376372","messageId":"87blzmmbd7.fsf@evledraar.gmail.com","threadId":"51070","inReplyTo":"20190519144309.9597-1-szeder.dev@gmail.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2019-05-28T23:02:12Z","receivedAt":"2019-05-28T23:02:18Z","isPatch":true,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"\nOn Sun, May 19 2019, SZEDER Gábor wrote:\n\n> For an environment variable that is supposed to be set by users, the\n> GIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n>\n> Most of the established GIT_* environment variables don't use\n> abbreviations, and in case of the few that do (GIT_DIR,\n> GIT_COMMON_DIR, GIT_DIFF_OPTS) it's quite obvious what the\n> abbreviations (DIR and OPTS) stand for.  But what does TR stand for?\n> Track, traditional, trailer, transaction, transfer, transformation,\n> transition, translation, transplant, transport, traversal, tree,\n> trigger, truncate, trust, or ...?!\n>\n> The trace2 facility, as the '2' suffix in its name suggests, is\n> supposed to eventually supercede Git's original trace facility.  It's\n> reasonable to expect that the corresponding environment variables\n> follow suit, and after the original GIT_TRACE variables they are\n> called GIT_TRACE2; there is no such thing is 'GIT_TR'.\n>\n> All trace2-specific config variables are, very sensibly, in the\n> 'trace2' section, not in 'tr2'.\n>\n> OTOH, we don't gain anything at all by omitting the last three\n> characters of \"trace\" from the names of these environment variables.\n>\n> So let's rename all GIT_TR2* environment variables to GIT_TRACE2*,\n> before they make their way into a stable release.\n\nGood to see this land in 2.22.0. I wonder if we shouldn't take this\nfurther and rename trace2.* config to trace.*, and just re-use\nGIT_TRACE=1 instead of having GIT_TRACE2 as well, and have a\nGIT_TRACE_VERSION to switch between them.\n\nThen we could just switch in a future version. We've never promised what\nthe trace format was going to look like, and the existing one isn't\nconfigurable (and we won't be making the v1 one...), so starting from\nthe outset with \"2\" in config is unfortunate.\n\nWe'd still have special snowflakes like e.g. GIT_TRACE_PACKET.\n\nOTOH we can just do this after the release if it's deemed a good idea,\nand just support trace2.* as aliases for trace.* for some amount of\ntime, same for the env vars.\n"},{"id":"376414","messageId":"8077e893-ebaf-9a23-2bf0-ba0ab78e7bae@jeffhostetler.com","threadId":"51070","inReplyTo":"f03e2ba6-36d8-d82b-3349-61341365b94e@gmail.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Jeff Hostetler","fromEmail":"git@jeffhostetler.com","sentAt":"2019-05-29T19:52:41Z","receivedAt":"2019-05-29T19:52:44Z","isPatch":true,"sender":{"key":"git@jeffhostetler.com","avatar":null},"body":"\n\nOn 5/28/2019 12:46 PM, Derrick Stolee wrote:\n> On 5/28/2019 12:25 PM, Junio C Hamano wrote:\n>> SZEDER Gábor <szeder.dev@gmail.com> writes:\n>>\n>>> For an environment variable that is supposed to be set by users, the\n>>> GIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n>>\n>> FWIW, I personally am in favor of this change and would prefer to see\n>> this done before the use of the names with unguessable abbreviation\n>> gets ingrained too deeply.\n>>\n>> I do not see any objections around these two patches after waiting\n>> for a week or so, but I do not see any Yay!s, either, so ...\n> \n> Talking with Jeff offline, we have no objections to the new names.\n> \n> We'll need to do some follow-up work on our side as we update our\n> version of Git, but that's not an issue.\n> \n> Thanks,\n> -Stolee\n> \n\n\nJust to close the loop.  Yes, I'm OK with changing the names.\n\nJeff\n"},{"id":"376417","messageId":"c93cb249-1618-e2ed-5ba3-31d716fdbe06@jeffhostetler.com","threadId":"51070","inReplyTo":"87blzmmbd7.fsf@evledraar.gmail.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Jeff Hostetler","fromEmail":"git@jeffhostetler.com","sentAt":"2019-05-29T19:58:32Z","receivedAt":"2019-05-29T19:58:35Z","isPatch":true,"sender":{"key":"git@jeffhostetler.com","avatar":null},"body":"\n\nOn 5/28/2019 7:02 PM, Ævar Arnfjörð Bjarmason wrote:\n> \n> On Sun, May 19 2019, SZEDER Gábor wrote:\n> \n>> For an environment variable that is supposed to be set by users, the\n>> GIT_TR2* env vars are just too unclear, inconsistent, and ugly.\n>>\n>> Most of the established GIT_* environment variables don't use\n>> abbreviations, and in case of the few that do (GIT_DIR,\n>> GIT_COMMON_DIR, GIT_DIFF_OPTS) it's quite obvious what the\n>> abbreviations (DIR and OPTS) stand for.  But what does TR stand for?\n>> Track, traditional, trailer, transaction, transfer, transformation,\n>> transition, translation, transplant, transport, traversal, tree,\n>> trigger, truncate, trust, or ...?!\n>>\n>> The trace2 facility, as the '2' suffix in its name suggests, is\n>> supposed to eventually supercede Git's original trace facility.  It's\n>> reasonable to expect that the corresponding environment variables\n>> follow suit, and after the original GIT_TRACE variables they are\n>> called GIT_TRACE2; there is no such thing is 'GIT_TR'.\n>>\n>> All trace2-specific config variables are, very sensibly, in the\n>> 'trace2' section, not in 'tr2'.\n>>\n>> OTOH, we don't gain anything at all by omitting the last three\n>> characters of \"trace\" from the names of these environment variables.\n>>\n>> So let's rename all GIT_TR2* environment variables to GIT_TRACE2*,\n>> before they make their way into a stable release.\n> \n> Good to see this land in 2.22.0. I wonder if we shouldn't take this\n> further and rename trace2.* config to trace.*, and just re-use\n> GIT_TRACE=1 instead of having GIT_TRACE2 as well, and have a\n> GIT_TRACE_VERSION to switch between them.\n> \n> Then we could just switch in a future version. We've never promised what\n> the trace format was going to look like, and the existing one isn't\n> configurable (and we won't be making the v1 one...), so starting from\n> the outset with \"2\" in config is unfortunate.\n> \n> We'd still have special snowflakes like e.g. GIT_TRACE_PACKET.\n> \n> OTOH we can just do this after the release if it's deemed a good idea,\n> and just support trace2.* as aliases for trace.* for some amount of\n> time, same for the env vars.\n> \n\nI'm open to considering such a change while we're at it.\n\nJeff\n"},{"id":"376428","messageId":"xmqqk1e9x7d1.fsf@gitster-ct.c.googlers.com","threadId":"51070","inReplyTo":"c93cb249-1618-e2ed-5ba3-31d716fdbe06@jeffhostetler.com","subject":"Re: [PATCH 1/2] trace2: rename environment variables to GIT_TRACE2*","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2019-05-29T21:45:30Z","receivedAt":"2019-05-29T21:45:37Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff Hostetler <git@jeffhostetler.com> writes:\n\n> On 5/28/2019 7:02 PM, Ævar Arnfjörð Bjarmason wrote:\n>>\n>> On Sun, May 19 2019, SZEDER Gábor wrote:\n>> ...\n>>> So let's rename all GIT_TR2* environment variables to GIT_TRACE2*,\n>>> before they make their way into a stable release.\n>>\n>> Good to see this land in 2.22.0. I wonder if we shouldn't take this\n>> further and rename trace2.* config to trace.*, and just re-use\n>> GIT_TRACE=1 instead of having GIT_TRACE2 as well, and have a\n>> GIT_TRACE_VERSION to switch between them.\n>>\n>> Then we could just switch in a future version. We've never promised what\n>> the trace format was going to look like, and the existing one isn't\n>> configurable (and we won't be making the v1 one...), so starting from\n>> the outset with \"2\" in config is unfortunate.\n>>\n>> We'd still have special snowflakes like e.g. GIT_TRACE_PACKET.\n>>\n>> OTOH we can just do this after the release if it's deemed a good idea,\n>> and just support trace2.* as aliases for trace.* for some amount of\n>> time, same for the env vars.\n>\n> I'm open to considering such a change while we're at it.\n\nI'm a bit against \"while we're at it\" part.  Let's take the\ns/TR2/TRACE2/ change and stop at it for the upcoming release,\nwithout spending too much time on over-engineering the stuff that\nare primarily for developers.\n\nThanks.\n"},{"id":"377078","messageId":"20190612142941.22056-1-avarab@gmail.com","threadId":"51070","inReplyTo":"20190519144309.9597-1-szeder.dev@gmail.com","subject":"[PATCH] Revert \"test-lib: whitelist GIT_TR2_* in the environment\"","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2019-06-12T14:29:41Z","receivedAt":"2019-06-12T14:29:59Z","isPatch":true,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"This reverts my commit c1ee5796dc (\"test-lib: whitelist GIT_TR2_* in\nthe environment\", 2019-03-30), which is now redundant.\n\nSince e4b75d6a1d (\"trace2: rename environment variables to\nGIT_TRACE2*\", 2019-05-19) the GIT_TRACE2* variables match the existing\nGIT_TRACE* pattern added in 95a1d12e9b (\"tests: scrub environment of\nGIT_* variables\", 2011-03-15), so we no longer need to list TR2 here.\n\nSigned-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>\n---\n t/test-lib.sh | 1 -\n 1 file changed, 1 deletion(-)\n\ndiff --git a/t/test-lib.sh b/t/test-lib.sh\nindex 599fd70e14..57f7c30377 100644\n--- a/t/test-lib.sh\n+++ b/t/test-lib.sh\n@@ -386,7 +386,6 @@ unset VISUAL EMAIL LANGUAGE COLUMNS $(\"$PERL_PATH\" -e '\n \tmy @env = keys %ENV;\n \tmy $ok = join(\"|\", qw(\n \t\tTRACE\n-\t\tTR2_\n \t\tDEBUG\n \t\tTEST\n \t\t.*_TEST\n-- \n2.22.0.rc1.257.g3120a18244\n\n"},{"id":"377094","messageId":"xmqq1rzyk81p.fsf@gitster-ct.c.googlers.com","threadId":"51070","inReplyTo":"20190612142941.22056-1-avarab@gmail.com","subject":"Re: [PATCH] Revert \"test-lib: whitelist GIT_TR2_* in the environment\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2019-06-12T17:49:54Z","receivedAt":"2019-06-12T17:50:02Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:\n\n> This reverts my commit c1ee5796dc (\"test-lib: whitelist GIT_TR2_* in\n> the environment\", 2019-03-30), which is now redundant.\n>\n> Since e4b75d6a1d (\"trace2: rename environment variables to\n> GIT_TRACE2*\", 2019-05-19) the GIT_TRACE2* variables match the existing\n> GIT_TRACE* pattern added in 95a1d12e9b (\"tests: scrub environment of\n> GIT_* variables\", 2011-03-15), so we no longer need to list TR2 here.\n\nYeah, makes sense.  Thanks.\n\n\n>\n> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>\n> ---\n>  t/test-lib.sh | 1 -\n>  1 file changed, 1 deletion(-)\n>\n> diff --git a/t/test-lib.sh b/t/test-lib.sh\n> index 599fd70e14..57f7c30377 100644\n> --- a/t/test-lib.sh\n> +++ b/t/test-lib.sh\n> @@ -386,7 +386,6 @@ unset VISUAL EMAIL LANGUAGE COLUMNS $(\"$PERL_PATH\" -e '\n>  \tmy @env = keys %ENV;\n>  \tmy $ok = join(\"|\", qw(\n>  \t\tTRACE\n> -\t\tTR2_\n>  \t\tDEBUG\n>  \t\tTEST\n>  \t\t.*_TEST\n"}]}