All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kaartic Sivaraam <kaartic.sivaraam@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Cc: "Atharva Raykar" <raykar.ath@gmail.com>,
	"Junio C Hamano" <gitster@pobox.com>,
	"Đoàn Trần Công Danh" <congdanhqx@gmail.com>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"Christian Couder" <christian.couder@gmail.com>,
	"Shourya Shukla" <periperidip@gmail.com>
Subject: [PATCH v2 0/1] submodule: corret an incorrectly formatted error message
Date: Sun, 19 Sep 2021 01:01:15 +0530	[thread overview]
Message-ID: <20210918193116.310575-1-kaartic.sivaraam@gmail.com> (raw)
In-Reply-To: <20210805192803.679948-1-kaartic.sivaraam@gmail.com>

Hi all,

Finally got a chance to send the v2 of this one.

Changes in v2:

- Removed the 'if' from the message as Atharva mentioned that it was
  added inadvertently

- Moved 'fatal:' prefix from middle of the message to the beginning.

- Expanded the commit message to also mention the output after the change

For reference, the v1 could be found here:

  https://public-inbox.org/git/20210805192803.679948-1-kaartic.sivaraam@gmail.com/

... and the range-diff against v1 could be found below. Reviews appreciated.

--
Sivaraam


Kaartic Sivaraam (1):
  submodule--helper: fix incorrect newlines in an error message

 builtin/submodule--helper.c | 36 ++++++++++++++++++++++--------------
 1 file changed, 22 insertions(+), 14 deletions(-)

Range-diff against v1:
1:  c00617bc03 ! 1:  c6daed7a92 submodule--helper: fix incorrect newlines in an error message
    @@ Commit message
     
         After the refactoring the error started appearing like so:
     
    -     --- START OF OUTPUT ---
    +      --- START OF OUTPUT ---
           $ git submodule add ../sub/ subm
           A git directory for 'subm' is found locally with remote(s):  origin     /me/git-repos-for-test/sub
           fatal: If you want to reuse this local git directory instead of cloning again from
    @@ Commit message
         Make the error message consistent with the error message that used to be
         printed before the refactoring.
     
    +    This also moves the 'fatal:' prefix that appears in the middle of the
    +    error message to the first line as it would more appropriate to have
    +    it in the first line. The output after the change would look like:
    +
    +      --- START OF OUTPUT ---
    +      $ git submodule add ../sub/ subm
    +      fatal: A git directory for 'subm' is found locally with remote(s):
    +        origin        /me/git-repos-for-test/sub
    +      If you want to reuse this local git directory instead of cloning again from
    +        /me/git-repos-for-test/sub
    +      use the '--force' option. If the local git directory is not the correct repo
    +      or you are unsure what this means choose another name with the '--name' option.
    +      ---  END OF OUTPUT  ---
    +
         [1]: https://lore.kernel.org/git/20210710074801.19917-5-raykar.ath@gmail.com/#t
     
      ## builtin/submodule--helper.c ##
    +@@ builtin/submodule--helper.c: struct add_data {
    + };
    + #define ADD_DATA_INIT { .depth = -1 }
    + 
    +-static void show_fetch_remotes(FILE *output, const char *sm_name, const char *git_dir_path)
    ++static void show_fetch_remotes(struct strbuf *msg, const char *sm_name, const char *git_dir_path)
    + {
    + 	struct child_process cp_remote = CHILD_PROCESS_INIT;
    + 	struct strbuf sb_remote_out = STRBUF_INIT;
    +@@ builtin/submodule--helper.c: static void show_fetch_remotes(FILE *output, const char *sm_name, const char *gi
    + 		while ((next_line = strchr(line, '\n')) != NULL) {
    + 			size_t len = next_line - line;
    + 			if (strip_suffix_mem(line, &len, " (fetch)"))
    +-				fprintf(output, "  %.*s\n", (int)len, line);
    ++				strbuf_addf(msg, "  %.*s\n", (int)len, line);
    + 			line = next_line + 1;
    + 		}
    + 	}
     @@ builtin/submodule--helper.c: static int add_submodule(const struct add_data *add_data)
    + 
      		if (is_directory(submod_gitdir_path)) {
      			if (!add_data->force) {
    - 				fprintf(stderr, _("A git directory for '%s' is found "
    +-				fprintf(stderr, _("A git directory for '%s' is found "
     -						  "locally with remote(s):"),
    -+						  "locally with remote(s):\n"),
    - 					add_data->sm_name);
    - 				show_fetch_remotes(stderr, add_data->sm_name,
    +-					add_data->sm_name);
    +-				show_fetch_remotes(stderr, add_data->sm_name,
    ++				struct strbuf msg = STRBUF_INIT;
    ++				char *die_msg;
    ++
    ++				strbuf_addf(&msg, _("A git directory for '%s' is found "
    ++						    "locally with remote(s):\n"),
    ++					    add_data->sm_name);
    ++
    ++				show_fetch_remotes(&msg, add_data->sm_name,
      						   submod_gitdir_path);
    -@@ builtin/submodule--helper.c: static int add_submodule(const struct add_data *add_data)
    - 				      "use the '--force' option. If the local git "
    - 				      "directory is not the correct repo\n"
    - 				      "or if you are unsure what this means, choose "
    + 				free(submod_gitdir_path);
    +-				die(_("If you want to reuse this local git "
    +-				      "directory instead of cloning again from\n"
    +-				      "  %s\n"
    +-				      "use the '--force' option. If the local git "
    +-				      "directory is not the correct repo\n"
    +-				      "or if you are unsure what this means, choose "
     -				      "another name with the '--name' option.\n"),
    -+				      "another name with the '--name' option."),
    - 				    add_data->realrepo);
    +-				    add_data->realrepo);
    ++
    ++				strbuf_addf(&msg, _("If you want to reuse this local git "
    ++						    "directory instead of cloning again from\n"
    ++						    "  %s\n"
    ++						    "use the '--force' option. If the local git "
    ++						    "directory is not the correct repo\n"
    ++						    "or you are unsure what this means choose "
    ++						    "another name with the '--name' option."),
    ++					    add_data->realrepo);
    ++
    ++				die_msg = strbuf_detach(&msg, NULL);
    ++				die("%s", die_msg);
      			} else {
      				printf(_("Reactivating local git directory for "
    + 					 "submodule '%s'\n"), add_data->sm_name);
-- 
2.32.0.385.gc00617bc03.dirty


  parent reply	other threads:[~2021-09-18 19:31 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-06 18:19 [GSoC] [PATCH 0/3] submodule add: partial conversion to C Atharva Raykar
2021-07-06 18:19 ` [GSoC] [PATCH 1/3] t7400: test failure to add submodule in tracked path Atharva Raykar
2021-07-06 18:19 ` [GSoC] [PATCH 2/3] submodule--helper: refactor module_clone() Atharva Raykar
2021-07-06 18:19 ` [GSoC] [PATCH 3/3] submodule--helper: introduce add-clone subcommand Atharva Raykar
2021-07-07 19:57   ` Junio C Hamano
2021-07-08  6:45     ` Atharva Raykar
2021-07-08  9:55 ` [GSoC] [PATCH v2 0/4] submodule add: partial conversion to C Atharva Raykar
2021-07-08  9:55   ` [GSoC] [PATCH v2 1/4] t7400: test failure to add submodule in tracked path Atharva Raykar
2021-07-08  9:55   ` [GSoC] [PATCH v2 2/4] submodule: prefix die messages with 'fatal' Atharva Raykar
2021-07-08 15:17     ` Junio C Hamano
2021-07-09 14:52     ` Đoàn Trần Công Danh
2021-07-10  7:52       ` Atharva Raykar
2021-07-10 12:04         ` Kaartic Sivaraam
2021-07-08  9:55   ` [GSoC] [PATCH v2 3/4] submodule--helper: refactor module_clone() Atharva Raykar
2021-07-08  9:55   ` [GSoC] [PATCH v2 4/4] submodule--helper: introduce add-clone subcommand Atharva Raykar
2021-07-10  7:47   ` [GSoC] [PATCH v3 0/4] submodule add: partial conversion to C Atharva Raykar
2021-07-10  7:47     ` [GSoC] [PATCH v3 1/4] t7400: test failure to add submodule in tracked path Atharva Raykar
2021-07-10  7:47     ` [GSoC] [PATCH v3 2/4] submodule: prefix die messages with 'fatal' Atharva Raykar
2021-07-10  7:48     ` [GSoC] [PATCH v3 3/4] submodule--helper: refactor module_clone() Atharva Raykar
2021-07-10  7:48     ` [GSoC] [PATCH v3 4/4] submodule--helper: introduce add-clone subcommand Atharva Raykar
2021-07-23 11:12       ` [PATCH] submodule: drop unused sm_name parameter from show_fetch_remotes() Jeff King
2021-07-23 17:12         ` Atharva Raykar
2021-07-26 19:03           ` Junio C Hamano
2021-08-05 19:28       ` [PATCH] submodule--helper: fix incorrect newlines in an error message Kaartic Sivaraam
2021-08-06  6:29         ` Atharva Raykar
2021-08-06 19:07           ` Kaartic Sivaraam
2021-09-18 19:31         ` Kaartic Sivaraam [this message]
2021-09-18 19:31           ` [PATCH v2 1/1] " Kaartic Sivaraam
2021-09-20 18:09             ` Junio C Hamano
2021-09-21 16:52               ` Atharva Raykar
2021-09-21 16:47             ` Atharva Raykar
2021-10-23 12:57               ` [PATCH v3 0/1] submodule: correct an incorrectly formatted " Kaartic Sivaraam
2021-10-23 12:57                 ` [PATCH v3 1/1] submodule--helper: fix incorrect newlines in an " Kaartic Sivaraam
2021-10-24  6:05                 ` [PATCH v3 0/1] submodule: correct an incorrectly formatted " Junio C Hamano

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=20210918193116.310575-1-kaartic.sivaraam@gmail.com \
    --to=kaartic.sivaraam@gmail.com \
    --cc=christian.couder@gmail.com \
    --cc=congdanhqx@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=periperidip@gmail.com \
    --cc=raykar.ath@gmail.com \
    --cc=sunshine@sunshineco.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.