Improve svn provider english outputs
- Dominant language
- Java
- Stars
- 104
- Forks
- 189
- Avg merge
- 17h 46m
- Merged PRs (30d)
- 6
Description
### Affected version
2.0.0
### Bug description
The svn client is forced to return english output using LC_MESSAGES=C and LC_MESSAGES=en, however the LC_ALL env var (when set) takes precedence over LC_MESSAGES, which causes the maven-release-plugin 3.0.1 to fail (which depends on maven-scm-2.0.0).
example output:
```
gbelingueres@SIS-7F46FA:~$ LC_ALL=es_AR.UTF-8 LC_MESSAGES=C svn info
svn: E155007: '/home/gbelingueres' no es una copia de trabajo
gbelingueres@SIS-7F46FA:~$ LC_ALL= LC_MESSAGES=C svn info
svn: E155007: '/home/gbelingueres' is not a working copy
gbelingueres@SIS-7F46FA:~$ LC_ALL=C LC_MESSAGES=C svn info
svn: E155007: '/home/gbelingueres' is not a working copy
gbelingueres@SIS-7F46FA:~$ svn --version
svn, version 1.14.1 (r1886195)
compiled May 21 2022, 10:52:35 on x86_64-pc-linux-gnu
```
A possible fix is to add LC_ALL=C to the command line, which I traced to [SvnCommandLineUtils.java](https://github.com/apache/maven-scm/blob/master/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java)
PS: I report the affected version to 2.0.0 since I verified it. But the above class source code shows that it inherit LC_ALL value from system enviroments even from previous versions to 2.2.1.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java and inspect how the SVN command environment sets locale variables. Reproduce the reported case with LC_ALL=es_AR.UTF-8 and LC_MESSAGES=C, then verify that SVN output remains English when LC_ALL is set. Done means the SVN provider no longer inherits a conflicting LC_ALL value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100