Bug 110

Summary: Subversion keyword 'Date' is sensitive to client's locale and produces syntactically incorrect CIF1.1 files under particular locales
Product: COD Reporter: Andrius Merkys <andrius.merkys>
Component: CIFAssignee: Saulius Grazulis <grazulis>
Status: NEW ---    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   

Description Andrius Merkys 2017-08-28 10:27:08 EEST
MWE command:

andrius@tasmanijos-velnias:~/ $ LC_TIME=lt_LT.UTF-8 svn cat -r120115
svn://www.crystallography.net/cod/cif/9/00/98/9009821.cif | head -n 2
#------------------------------------------------------------------------------
#$Date: 2014-07-12 11:06:43 +0300 (Št, 12 Lie 2014) $

As per specification of CIF1.1, comments MUST NOT include non-ASCII symbols.
Therefore, under some locale settings syntactically incorrect CIF files are
produced at client side. There seems to be no server-side mechanism to force a
specific locale (Subversion bug description:
http://subversion.tigris.org/issues/show_bug.cgi?id=2332).

Possible fixes and/or work-arounds:

* client side: use LC_TIME=en_US.UTF-8 for checkouts/exports/updates.
Individual Subversion clients have to be checked whether/how they allow
changing the locale.
* server side: use fixed-length field for $Date$ as described in
http://subversion.tigris.org/issues/show_bug.cgi?id=2332, or to cease using
$Date$ at all.
Comment 1 Andrius Merkys 2017-08-28 10:53:23 EEST
I have referenced the bug in http://wiki.crystallography.net/howtoobtaincod/
describing a possible workaround.