git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Jonathan Tan <jonathantanmy@google.com>
Cc: git@vger.kernel.org
Subject: Re: [RFC PATCH] bugreport: also print value of no_proxy envvar
Date: Wed, 22 Mar 2023 15:36:43 -0700	[thread overview]
Message-ID: <xmqqsfdwbeh0.fsf@gitster.g> (raw)
In-Reply-To: <20230322173421.2243947-1-jonathantanmy@google.com> (Jonathan Tan's message of "Wed, 22 Mar 2023 10:34:21 -0700")

Jonathan Tan <jonathantanmy@google.com> writes:

> At $DAYJOB, there was an issue that could have been diagnosed much more
> quickly had we known what the $no_proxy environment variable was set
> to. Print this value when the user runs "git bugreport". This is useful
> not only when a command that explicitly uses the network (e.g. fetch
> or clone) is run, but also in a partial clone (in which lazy fetches
> may occur).
>
> Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
> ---
> Taking off the author's hat and putting on the reviewer's hat, I'm
> not so sure if this is the right approach, since $no_proxy might have
> information that the user doesn't want to share (especially since it
> could be used beyond the current repository, and even beyond Git), the
> user being informed that they can delete any lines notwithstanding.

How certain are you that the "git bugreport" process will see more
or less the same set of environment variables as the process that
runs "git" for real work for the same user?  The latter may have its
environment affected due to $CORP wrapper scripts, etc.

Or other environment variables like http_proxy may be causing harm
to the user's use of Git, and inspecting no_proxy alone may not give
you anything useful.  With devil's advocate hat on, I am tempted to
suggest another approach at the the total opposite of the spectrum:
dump everything in **environ and let the user edit out what ought to
be private.  Intelligent ones may even notice a fishy setting they
forgot about while trying to cull the report of these environment
variables ;-)

> Therefore I'm sending this patch as RFC.
> ---
>  builtin/bugreport.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/builtin/bugreport.c b/builtin/bugreport.c
> index 5bc254be80..c9dd817e70 100644
> --- a/builtin/bugreport.c
> +++ b/builtin/bugreport.c
> @@ -12,6 +12,7 @@ static void get_system_info(struct strbuf *sys_info)
>  {
>  	struct utsname uname_info;
>  	char *shell = NULL;
> +	char *no_proxy = NULL;
>  
>  	/* get git version from native cmd */
>  	strbuf_addstr(sys_info, _("git version:\n"));
> @@ -39,6 +40,9 @@ static void get_system_info(struct strbuf *sys_info)
>  	shell = getenv("SHELL");
>  	strbuf_addf(sys_info, "$SHELL (typically, interactive shell): %s\n",
>  		    shell ? shell : "<unset>");
> +
> +	no_proxy = getenv("no_proxy");
> +	strbuf_addf(sys_info, "$no_proxy: %s\n", no_proxy ? no_proxy : "<unset>");
>  }
>  
>  static void get_populated_hooks(struct strbuf *hook_info, int nongit)

  reply	other threads:[~2023-03-22 22:36 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-22 17:34 [RFC PATCH] bugreport: also print value of no_proxy envvar Jonathan Tan
2023-03-22 22:36 ` Junio C Hamano [this message]
2023-03-27 17:48   ` Glen Choo

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=xmqqsfdwbeh0.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=jonathantanmy@google.com \
    /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;
as well as URLs for NNTP newsgroup(s).