Can't checkout svn repository that contains filenames in some UTF-8 symbols (Linux)
Nobody has claimed this yet.
- Dominant language
- Perl
- Stars
- 737
- Forks
- 214
- PR merge metrics
- No merged PRs in 30d
Description
Hello.
Can't checkout svn repository that contains filenames in some UTF-8 symbols (Linux Debian 9 and OpenBSD)
Rex version: 1.6.0
Subversion client version: 1.9.5 (r1770682)
filename examples:
- Grüßen
- ブランチ
I can checkout this repository from shell:
LC_ALL= LC_CTYPE=en_US.UTF-8 svn --non-interactive --trust-server-cert --username 'user' --password 'user' checkout https://host/svn/path/ /path/
but can't via Rex::SCM::Subversion because it force set LC_ALL=C in Rex::Interface::Exec::Local at line 75
LC_CTYPE= should be a current system locale
related stackoverflow topic about SVN-client: https://stackoverflow.com/questions/2116718/svn-error-cant-convert-string-from-native-encoding-to-utf-8
Best Regards, Ilya Pavlov
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in Rex::Interface::Exec::Local at line 75, then trace how Rex::SCM::Subversion invokes the checkout command. Compare its locale environment with the working shell command using UTF-8 filenames. Done means checkout succeeds for names such as Grüßen and ブランチ on the reported systems without forcing an incompatible locale.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, perl
- Domain
- devops, infrastructure
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100