[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] allow svnsync to translate non-UTF-8 log messages to UTF-8

From: Daniel Trebbien <dtrebbien_at_gmail.com>
Date: Fri, 10 Sep 2010 09:10:08 -0700

Add a command line option to the svnsync init, sync, and copy-revprops
subcommands (--source-encoding) that allows the user to specify the
character encoding of translatable properties from the source
repository. This is needed to allow svnsync to import some older
Subversion repositories that have properties that were not encoded in

As discussed at:

* subversion/svnsync/main.c
  (svnsync__opt) Added svnsync_opt_source_encoding.
  (svnsync_cmd_table): Added svnsync_opt_source_encoding to the list
of acceptable options for the init, sync, and copy-revprops
  (opt_baton_t, subcommand_baton_t): Added source_encoding field.
  (log_properties_normalized): Removed this obsolete function.
  (copy_revprops): Added a parameter to receive the
subcommand_baton_t*. Removed the quiet parameter as this can be found
from the subcommand baton. Removed the int* normalized_count
parameter, as the counting of "normalized" properties is an obsolete
  (make_subcommand_baton): Set the source_encoding field of the
resulting subcommand_baton_t object to the value of source_encoding
from opt_baton_t.
  (do_initialize, do_synchronize, do_copy_revprops): Removed counting
and reporting of "normalized" properties. Pass source_encoding through
to svnsync_* functions.
  (replay_baton_t): Removed obsolete fields normalized_rev_props_count
and normalized_node_props_count
  (main): Handled the case when the command line option is
--source-encoding. Set the source_encoding field of the opt_baton_t*
to either the ARG of --source-encoding or NULL.

* subversion/svnsync/sync.c
  Standardized terminology by replacing "normalize" with "translate".
  (translate_string): Added the encoding parameter. Handle the case
when encoding is not NULL by calling svn_subst_translate_string().
  (svnsync_translate_revprops): Added the encoding parameter. Removed
counting of "normalized" properties.
  (edit_baton_t): Added the prop_encoding field. Removed the obsolete
int* normalized_node_props_counter field.
  (svnsync_get_sync_editor): Added a prop_encoding parameter, the
value of which is set in the prop_encoding field of the edit_baton_t*.

* subversion/svnsync/sync.h
  Updated the declarations and documentation of the svnsync_* functions.
Received on 2010-09-10 18:11:03 CEST

This is an archived mail posted to the Subversion Dev mailing list.