[PATCH] Add description for SVNUseUTF8 (issue #2487)

Stefan Sperling stsp at elego.de
Thu Feb 2 13:13:45 CST 2012

On Thu, Feb 02, 2012 at 06:20:54PM +0100, Neels J Hofmeyr wrote:
> A new version of the patch, after some review by stsp. Hard to strike the
> right balance between necessary context, factual correctness and avoiding
> information overload... further comments, as always, welcome.

> Index: en/book/ch09-reference.xml
> ===================================================================
> --- en/book/ch09-reference.xml	(revision 4248)
> +++ en/book/ch09-reference.xml	(working copy)
> @@ -11235,6 +11235,31 @@
>              </listitem>
>            </varlistentry>
> +          <varlistentry>
> +            <term><literal>SVNUseUTF8 On|Off</literal></term>
> +            <listitem>
> +
> +              <para>When set to <literal>On</literal>, UTF-8 characters can
> +              be used in repository root paths, in arguments passed to hook
> +              scripts as well as error messages printed by hook scripts.
> +              Usually, only 7-bit ASCII characters are available to
> +              <command>httpd</command> modules, causing problems with
> +              special characters. This option alleviates these problems.

s/special/non-ASCII/  (as danielsh suggested on earlier iteration)

> +              Note that when enabling this option, your hook scripts must
> +              operate in the UTF-8 character set regardless of the
> +              environment.

I'd drop the above sentence. Hooks are actually run in an empty
environment, and this new option doesn't change that. There is
effectively no environment at all for hooks run from mod_dav_svn.

Or do you not mean the environment of a process, but something else?
In that case, please don't use the term "environment" because people
will likely make an immediate mental leap to "environment variable"
since locales can be involved here.

>                              For example, if one repository is served both
> +              by <command>httpd</command> and <command>svnserve</command>,
> +              <command>svnserve</command> should also be configured to use
> +              UTF-8, by setting an appropriate locale in its environment.

I'd say: ", <command>svnserve</command> should be run in a locale
that supports UTF-8".

How this locale is configured is system-dependent. On *nix systems
locales are usually configured via LC_ALL, or LANG, but e.g. with
Windows the story is different -- and svnserve runs there, too.

> +              Also, a repository root path containing special characters

again, s/special/non-ASCII/

Looks great otherwise, thanks! :)

> +              must be encoded in UTF-8 in the local file system to work
> +              properly with this option in use.
> +              The default setting is <literal>Off</literal>. This option is
> +              available as of Subversion 1.8.</para>
> +
> +            </listitem>
> +          </varlistentry>
> +
>          </variablelist>
>        </refsect1>
>      </refentry>

More information about the svnbook-dev mailing list