OSX Subversion not working / Poor error message

Hi Matt,

To be absolutely sure, I took the very, very latest from Apache, build from homebrew, this is what I have in Terminal on OSX:

/usr/local/Cellar/subversion/1.9.0-rc3

However, I get this message from Unreal:

Error svn: E155021: This client is too old to work with the working copy at
Error ‘/Users/(deleted)/Documents/FlatTopHoverCar_SVN’ (format 31).
Error You need to get a newer Subversion client. For more details, see
Error http://subversion.apache.org/faq.html#working-copy-format-change
Error Failed to connect to source control. Check your settings and connection then try again.

Everything else is working fine, it is only OSX, setting up SVN from inside Unreal that does not work.

Thanks.

Hey Fritsl -

Have a couple questions for you.

  1. In your log when it tries to connect, what pathway does it show for LogSourceControl: Using path ?
  2. If you run the command which svn what do you get?

Working with one of our Devs, we were able find that on my Mac that’s exhibiting this issue, it’s pointing to /usr/bin/svn , which for me is at the following version.
svn, version 1.7.22 (r1694152) compiled Feb 10 2016, 16:22:46

To workaround it for now, you can add a path for the ExecutableLocation= in your SourceControlSettings.ini (This can be found in /Users/UserName/Library/Preferences/Unreal Engine/ProjectNameEditor/Mac)

[SubversionSourceControl.SubversionSourceControlSettings]
Repository=“UserTrunkPath”
UserName=UserName
LabelsRoot=UserInfo
ExecutableLocation=/usr/local/bin/svn

I made use of /usr/local/bin/svn and that allowed me to connect to in UE4, which for me is svn, version 1.8.13 (r1667537) compiled Mar 31 2015, 15:33:52 on x86_64-apple-darwin14.1.0

We’ll continue to investigate why it’s picking the wrong one to begin with.

We haven’t heard from you in a while Fritsl. Are you still experiencing these issues? If so, could you provide the information Nick has requested? We need more information from you to progress with this issue.

In the meantime I’ll be marking this post as resolved for tracking purposes. Whenever you’re available, please leave a comment and the post will reopen.

Hi guys, sorry for the late reply, I thought you where asking the same questions over, but maybe I am not getting what you ask. Here’s my best attempts, please let me know more precisely what steps you’d like me to perform if this is not sufficient:

Q1A: This is what I get, as written before, all output in Unreal Log is here:

Error svn: E155021: This client is too old to work with the working copy at
Error ‘/Users/fritslyneborg/Documents/FlatTopHoverCar_SVN’ (format 31).
Error You need to get a newer Subversion client. For more details, see
Error http://subversion.apache.org/faq.html#working-copy-format-change
Error Failed to connect to source control. Check your settings and connection then try again.

Q2A:
I’m not familiar with the option of running commands to Unreal on OSX, the documentation is only pointing towards Windows as far as I can tell:

Thanks.

Sorry, have answered below as good as I could.

Hey Fritsl -

No worries, they were a bit short in description on my part for the 2 questions.

  1. In your log when it tries to connect, what pathway does it show for LogSourceControl: Using path ?

After attempting to connect to your SVN source control, open your Editors log (Project/Saved/Logs/Project.log) in a text edit app and use cmd+F to search for LogSourceControl: Using path

For example mine was
LogSourceControl: Using path /usr/bin/svn for svn operations

  1. If you run the command which svn what do you get?
    This command is run in OS X Terminal.app.

When I run this I get
/usr/local/bin/svn

As far as attempting to resolve your issue, if you can try following the workaround I mentioned before and let us know if that works, or if there are parts of it that need to be clarified.

Hi Nick,

I do not think there is any
Project/Saved/Logs/Project.log
on OSX installs of Unreal engine?!?

I suppose you mean UE4.log found here:
~/Library/Logs/Unreal Engine/ProjectNameEditor/

?
However I am not able to provoke that to write anything useful about SVN. There are no entries of LogSourceControl

All I can provoke the system to write in this log is the useless:
[2016.05.14-19.45.55:321][ 0]SourceControl: Info Source control is disabled

**

which svn
returns
/opt/subversion/bin/svn

Cheers

Yes, and then of course I get these in the log as well, but I suppose also useless:

[2016.05.14-19.46.06:259][ 87]LogModuleManager: Shutting down and abandoning module GitSourceControl (97)

Hi again, doing what I can to investigate, I stumbled across this page:

However I think that is outdated or something, as there are no

~/Library/Logs/Unreal Engine/ProjectNameEditor/

on my Mac.

I do however have a

~/Library/Logs/Unreal Engine/MyProjectEditor/

which holds a

MyProject.log

  • but nor that has any entries for LogSourceControl

Maybe such a log entry is only written if connection is successful? Or on PC? I cannot seam to find any Mac info on this.

Hey Fritsl -

Maybe such a log entry is only written
if connection is successful? Or on PC?
I cannot seam to find any Mac info on
this.

That bit of logging is expected to show up when you succeed or fail to connect. Here’s what I’m doing to reproduce the issue and then how I’m able to workaround it.

  1. Open Project
  2. Select Source Control
  3. Select Subversion
  4. Fill in information
  5. Select Connect

Result: Fails to connect, and the following is shown in Output Log (Windows > Developer Tools > Output log)

  • Editor Output log gets written to ~/Library/Logs/Unreal Engine/ProjectNameEditor/ProjectNameEditor.log

    LogSourceControl: Attempting “svn info “/Users/Shared/UEQA_SCTest/SVN/EngineQATest/” --xml --non-interactive --trust-server-cert --username nick.bullard --password ********”
    LogSourceControl: Using path /usr/bin/svn for svn operations
    SourceControl:Error: Error svn: E155021: This client is too old to work with the working copy at
    SourceControl:Error: Error ‘/Users/Shared/UEQA_SCTest/SVN/EngineQATest’ (format 31).
    SourceControl:Error: Error You need to get a newer Subversion client. For more details, see
    SourceControl:Error: Error Apache Subversion FAQ
    SourceControl:Error: Error Failed to connect to source control. Check your settings and connection then try again.

The copy of SVN the editor is trying to use is shown here >
LogSourceControl: Using path /usr/bin/svn for svn operations

Workaround

  1. Close the editor
  2. Go to ~/Library/Preferences/Unreal Engine/ProjectNameEditor/Mac/ and open SourceControlSettings.ini
  3. Set ExecutableLocation=/usr/local/bin/svn

  1. Save the file
  2. Open ProjectName in UE4Editor

Result: Project is connected to Source Control

Let me know if this still doesn’t work for you.

WEHEEE, had not seen your answer, it works, it works, OSX is now on SVN on Unreal, wow :slight_smile:

Thanks!

Ehrmnh… Hrm! No, it does not work for me, here locally… OK, Unreal is ‘Green’ and all LOOKS like on PC, however when trying to

[Top Menu: Submit to source Control] →
I get->
Bottom Right popup:
Checking for Assets to Check in [] [] []

!Failed Checking Source Control Status

Like written, all is ‘Green’, I am told that connetion is sucessful, there is nothing written in the Message Log, all looks dandy.

As a test/example: I create a new material, right click and ‘add to source control’, then Message Log writes back:

Error Authentication failed
Error svn: E170013: Unable to connect to a repository at URL ‘http://svn.xxxx(edited out)’
Error svn: E215004: No more credentials or we tried too many times.
Error Authentication failed
Error svn: E200009: Commit failed (details follow):
Error svn: E200009: 'http://svn.xxxx(edited out)‘TEST.uasset’ is not under version control
Error svn: E170013: Unable to connect to a repository at URL ‘http://svn.xxxx(edited out)’
Error svn: E215004: No more credentials or we tried too many times.

All of the above in a clean log, only for trying to commit a single Material as ‘Add’ via SVN.

I’m looking for the JIRA ticket, but we’ve had some instance of this occurring internally, but has been very rare.

The workaround for this is rather than the using the Submit to Source Control… option, use the right-click context menu on the asset itself.

Using the Right-click context menu on the asset itself generates the following example:


The following assets could not be successfully checked out from source control:
/Game/StaticMesh/FutureCity


Again: All is green, I’m told that I have successfully connected, and by using third party SVN client software I have no issues.

Hey Fritsl -

We were finally able to get a consistent repro on one of our Macs, and has been logged as UE-31551. If we find a workaround for it I’ll post back.

This is marked by staff as ‘Answer’, I would like to undo that but lack permission

Though please note that the bug is not fixed, there is no answer to OP, unfortunately 4.12 is offering a new error message, but the functionality is still not there.

Thanks.

Unfortunately upgrade to 4.12 has not fixed this issue.

Thanks :slight_smile:

Hey Fritsl -

Can you try the following to see if it resolves the issues

Workaround

  1. Close the editor
  2. Go to ~/Library/Preferences/Unreal Engine/ProjectNameEditor/Mac/ and open SourceControlSettings.ini
  3. Set ExecutableLocation=/Users/Shared/UnrealEngine/4.12/Engine/Binaries/ThirdParty/svn/Mac/bin/svn
  4. Save the file
  5. Open ProjectName in UE4Editor

Hi Nick,

The ini file said

ExecutableLocation=/usr/local/bin/svn

I changed it to

ExecutableLocation=/Users/Shared/UnrealEngine/4.12/Engine/Binaries/ThirdParty/svn/Mac/bin/svn

(and I have 4.12.2 installed as of
writing this)

I tried to submit to
source control right away, but got an
error message.

I reset the Source
control settings from within the
editor (to make sure things where
right)

I got [Connection to source
control was successful] (as before)

I
then opened the
SourceControlSettings.ini file again
to confirm.

It had not changed (Was
still
ExecutableLocation=/Users/Shared/UnrealEngine/4.12/Engine/Binaries/ThirdParty/svn/Mac/bin/svn)

I then tried to commit to source
control again from within the editor,
but got error messages no matter
what.

I then checked that that there
was in fact a file at
[/Users/Shared/UnrealEngine/4.12/Engine/Binaries/ThirdParty/svn/Mac/bin/svn]
and yes, it exists, 5.3 MB, and it
executes fine in the terminal.

So: ‘everything works’, UE confirms it’s got a connection, Terminal executes SVN, it’s only the actual ‘Commit to source control’ from within the editor that does not work.

HOWEVER: The error message is now [Failed to check Source control Status]