This has a bug, when updating a file external it displays the external's
directory rather than the external itself.  (But maybe this is a bug in
the way the library generates the notifications?)

May I ask what is the motivation for this change?  The normal
notifications (U   path/to/somewhere) will always immediately precede
the "Updated external 'path/to/somewhere' to revision %ld", so repeating
the external's path there seems a bit redundant.

I haven't run 'make check'.

Daniel


Tijn Porcelijn wrote on Fri, Nov 26, 2010 at 01:56:22 -0800:
> [[[
> Improves interaction, issue #3653: svn update should not output svn:external
> * subversion/svn/notify.c (notify)
>   Add <path_local> to Externals messages
>   Note: po files should also be updated
> ]]]
> 
> 
> 
> 
> Hi,
> 
> Here's a small patch for making svn:externals messages a bit more 
> informative. With the "Fetching external item into '<path_local>'" -message 
> removed, interpretation of svn_wc_notify_update_completed messages becomes a 
> bit less obvious. You'll see stuff like:
> External at revision 20
> External at revision 2321
> External at revision 1082367
> At revision 19
> The patch improves this to read:
> External 'third-party' at revision 20
> External 'snapshots' at revision 2321
> External 'legacy' at revision 1082367
> At revision 19
> See attached notify.c.patch, Thanks,
> 
> tijn
> 

Content-Description: notify.c.patch
> Index: subversion/svn/notify.c
> ===================================================================
> --- subversion/svn/notify.c   (revision 1038983)
> +++ subversion/svn/notify.c   (working copy)
> @@ -567,44 +567,66 @@
>                {
>                  if (nb->is_export)
>                    {
> -                    if ((err = svn_cmdline_printf
> -                         (pool, nb->in_external
> -                          ? _("Exported external at revision %ld.\n")
> -                          : _("Exported revision %ld.\n"),
> -                          n->revision)))
> -                      goto print_error;
> +                    if (nb->in_external)
> +                      err = svn_cmdline_printf
> +                         (pool,
> +                          _("Exported external '%s' at revision %ld.\n"),
> +                          path_local,
> +                          n->revision);
> +                    else
> +                      err = svn_cmdline_printf
> +                         (pool,
> +                          _("Exported revision %ld.\n"),
> +                          n->revision);
>                    }
>                  else if (nb->is_checkout)
>                    {
> -                    if ((err = svn_cmdline_printf
> -                         (pool, nb->in_external
> -                          ? _("Checked out external at revision %ld.\n")
> -                          : _("Checked out revision %ld.\n"),
> -                          n->revision)))
> -                      goto print_error;
> +                    if (nb->in_external)
> +                      err = svn_cmdline_printf
> +                         (pool,
> +                          _("Checked out external '%s' at revision %ld.\n"),
> +                          path_local,
> +                          n->revision);
> +                    else
> +                      err = svn_cmdline_printf
> +                         (pool,
> +                          _("Checked out revision %ld.\n"),
> +                          n->revision);
>                    }
>                  else
>                    {
>                      if (nb->received_some_change)
>                        {
>                          nb->received_some_change = FALSE;
> -                        if ((err = svn_cmdline_printf
> -                             (pool, nb->in_external
> -                              ? _("Updated external to revision %ld.\n")
> -                              : _("Updated to revision %ld.\n"),
> -                              n->revision)))
> -                          goto print_error;
> +                        if (nb->in_external)
> +                          err = svn_cmdline_printf
> +                             (pool,
> +                              _("Updated external '%s' to revision %ld.\n"),
> +                              path_local,
> +                              n->revision);
> +                        else
> +                          err = svn_cmdline_printf
> +                             (pool,
> +                              _("Updated to revision %ld.\n"),
> +                              n->revision);
>                        }
>                      else
>                        {
> -                        if ((err = svn_cmdline_printf
> -                             (pool, nb->in_external
> -                              ? _("External at revision %ld.\n")
> -                              : _("At revision %ld.\n"),
> -                              n->revision)))
> -                          goto print_error;
> +                        if (nb->in_external)
> +                          err = svn_cmdline_printf
> +                             (pool,
> +                              _("External '%s' at revision %ld.\n"),
> +                              path_local,
> +                              n->revision);
> +                        else
> +                          err = svn_cmdline_printf
> +                             (pool,
> +                              _("At revision %ld.\n"),
> +                              n->revision);
>                        }
>                    }
> +                if (err)
> +                  goto print_error;
>                }
>              else  /* no revision */
>                {

Reply via email to