Patchwork [U-Boot] patman: Allow specifying the message ID your series is in reply to

login
register
mail settings
Submitter Doug Anderson
Date March 15, 2013, 11:25 p.m.
Message ID <1363389935-23721-1-git-send-email-dianders@chromium.org>
Download mbox | patch
Permalink /patch/228194/
State Changes Requested
Headers show

Comments

Doug Anderson - March 15, 2013, 11:25 p.m.
Some versions of git don't seem to prompt you for the message ID that
your series is in reply to.  Allow specifying this from the command
line.

Signed-off-by: Doug Anderson <dianders@chromium.org>
---
 tools/patman/gitutil.py | 7 ++++++-
 tools/patman/patman.py  | 4 +++-
 2 files changed, 9 insertions(+), 2 deletions(-)
Otavio Salvador - March 16, 2013, 2:47 p.m.
On Fri, Mar 15, 2013 at 8:25 PM, Doug Anderson <dianders@chromium.org> wrote:
> Some versions of git don't seem to prompt you for the message ID that
> your series is in reply to.  Allow specifying this from the command
> line.
>
> Signed-off-by: Doug Anderson <dianders@chromium.org>
> ---
>  tools/patman/gitutil.py | 7 ++++++-
>  tools/patman/patman.py  | 4 +++-
>  2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py
> index ca3ba4a..f40bbb4 100644
> --- a/tools/patman/gitutil.py
> +++ b/tools/patman/gitutil.py
> @@ -203,7 +203,7 @@ def BuildEmailList(in_list, tag=None, alias=None):
>      return result
>
>  def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
> -        self_only=False, alias=None):
> +        self_only=False, alias=None, in_reply_to=None):
>      """Email a patch series.
>
>      Args:
> @@ -213,6 +213,8 @@ def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
>          dry_run: Just return the command that would be run
>          cc_fname: Filename of Cc file for per-commit Cc
>          self_only: True to just email to yourself as a test
> +        in_reply_to: If non-None we'll pass this to git as --in-reply-to.

...: If set we'll pass this to git ...

> +            Should be a message ID that this is in reply to.
>
>      Returns:
>          Git command that was/would be run
> @@ -262,6 +264,9 @@ def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
>          to = BuildEmailList([os.getenv('USER')], '--to', alias)
>          cc = []
>      cmd = ['git', 'send-email', '--annotate']
> +    if in_reply_to:
> +        cmd.append('--in-reply-to="%s"' % in_reply_to)
> +
>      cmd += to
>      cmd += cc
>      cmd += ['--cc-cmd', '"%s --cc-cmd %s"' % (sys.argv[0], cc_fname)]
> diff --git a/tools/patman/patman.py b/tools/patman/patman.py
> index e049081..377408d 100755
> --- a/tools/patman/patman.py
> +++ b/tools/patman/patman.py
> @@ -53,6 +53,8 @@ parser.add_option('-n', '--dry-run', action='store_true', dest='dry_run',
>  parser.add_option('-p', '--project', default=project.DetectProject(),
>                    help="Project name; affects default option values and "
>                    "aliases [default: %default]")
> +parser.add_option('-r', '--in-reply-to', type='string', action='store',
> +                  help="Message ID that this series is in reply to")
>  parser.add_option('-s', '--start', dest='start', type='int',
>         default=0, help='Commit to start creating patches from (0 = HEAD)')
>  parser.add_option('-t', '--test', action='store_true', dest='test',
> @@ -163,7 +165,7 @@ else:
>      cmd = ''
>      if ok or options.ignore_errors:
>          cmd = gitutil.EmailPatches(series, cover_fname, args,
> -                options.dry_run, cc_file)
> +                options.dry_run, cc_file, in_reply_to=options.in_reply_to)
>
>      # For a dry run, just show our actions as a sanity check
>      if options.dry_run:
> --
> 1.8.1.3
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
Simon Glass - March 16, 2013, 10:25 p.m.
Hi Doug,

On Sat, Mar 16, 2013 at 7:47 AM, Otavio Salvador
<otavio@ossystems.com.br> wrote:
> On Fri, Mar 15, 2013 at 8:25 PM, Doug Anderson <dianders@chromium.org> wrote:
>> Some versions of git don't seem to prompt you for the message ID that
>> your series is in reply to.  Allow specifying this from the command
>> line.
>>
>> Signed-off-by: Doug Anderson <dianders@chromium.org>

With the nit fixed:

Acked-by: Simon Glass <sjg@chromium.org>

Thanks for sending this - this seems to be an important fix now that
git's behaviour is different.

Regards,
Simon

Patch

diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py
index ca3ba4a..f40bbb4 100644
--- a/tools/patman/gitutil.py
+++ b/tools/patman/gitutil.py
@@ -203,7 +203,7 @@  def BuildEmailList(in_list, tag=None, alias=None):
     return result
 
 def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
-        self_only=False, alias=None):
+        self_only=False, alias=None, in_reply_to=None):
     """Email a patch series.
 
     Args:
@@ -213,6 +213,8 @@  def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
         dry_run: Just return the command that would be run
         cc_fname: Filename of Cc file for per-commit Cc
         self_only: True to just email to yourself as a test
+        in_reply_to: If non-None we'll pass this to git as --in-reply-to.
+            Should be a message ID that this is in reply to.
 
     Returns:
         Git command that was/would be run
@@ -262,6 +264,9 @@  def EmailPatches(series, cover_fname, args, dry_run, cc_fname,
         to = BuildEmailList([os.getenv('USER')], '--to', alias)
         cc = []
     cmd = ['git', 'send-email', '--annotate']
+    if in_reply_to:
+        cmd.append('--in-reply-to="%s"' % in_reply_to)
+
     cmd += to
     cmd += cc
     cmd += ['--cc-cmd', '"%s --cc-cmd %s"' % (sys.argv[0], cc_fname)]
diff --git a/tools/patman/patman.py b/tools/patman/patman.py
index e049081..377408d 100755
--- a/tools/patman/patman.py
+++ b/tools/patman/patman.py
@@ -53,6 +53,8 @@  parser.add_option('-n', '--dry-run', action='store_true', dest='dry_run',
 parser.add_option('-p', '--project', default=project.DetectProject(),
                   help="Project name; affects default option values and "
                   "aliases [default: %default]")
+parser.add_option('-r', '--in-reply-to', type='string', action='store',
+                  help="Message ID that this series is in reply to")
 parser.add_option('-s', '--start', dest='start', type='int',
        default=0, help='Commit to start creating patches from (0 = HEAD)')
 parser.add_option('-t', '--test', action='store_true', dest='test',
@@ -163,7 +165,7 @@  else:
     cmd = ''
     if ok or options.ignore_errors:
         cmd = gitutil.EmailPatches(series, cover_fname, args,
-                options.dry_run, cc_file)
+                options.dry_run, cc_file, in_reply_to=options.in_reply_to)
 
     # For a dry run, just show our actions as a sanity check
     if options.dry_run: