Mattias Engdegård wrote: > 2 apr 2013 kl. 15.51 skrev Julian Foad: >> FAIL: upgrade_tests.py 24: wc with add-add and del-del tree conflicts >> >> That's failing in local_reason_str() with kind=none and reason=deleted, >> so at least we need that function to handle that case. > > Quel blamage! I'm really sorry - I thought I had run all the tests, but > apparently not. > There is no excuse for that.
No problem, I do that sometimes. >> This indicates that perhaps the only way to get kind=none is an upgrade >> from a previous WC format. We could handle such unusual cases by >> constructing a >> response from the separate parts, and not attempt to use different messages >> for >> every possible combination. The important thing is to use well written >> messages >> for the common cases. The unusual or impossible cases can just have some >> inelegant construction like we were doing before, and then we'd be sure to >> handle any case that might arise rather than throwing an error. > > I agree. Here is a new patch which does exactly that. It re-uses the XML > strings > for the unusual case since there really is no point in translating them. > > [[[ > Make the conflict message "local %s %s, incoming %s %s upon %s" > translatable by constructing it from longer parts, each translated, > instead of single words (some of which were not translated at all). > > * subversion/svn/cl-conflicts.c > (svn_cl__get_human_readable_tree_conflict_description): Build string out > of translated sub-phrases rather than from single words. > (local_reason_str, incoming_action_str, operation_str): New. > (map_conflict_action_human, map_conflict_reason_human, > action_str, reason_str): Removed. > ]]] Committed in r1465299. Thanks! - Julian