Hg breaks on long paths

While initially syncing from server to agent, we always get this error:

An error occurred while syncing files from the server to the agent. Details: Exception: ProcessException Message: Running C:\Program Files\VSoft Technologies\ContinuaCI Agent\hg\hg.exe with arguments “archive -r a097b5e4cf89b575eba3c5ec52e1d318195c7834 --subrepos -R F:\Repos\9541699a F:\Ws\13587\Source\MyProject --config ui.username=Continua --noninteractive” on agent failed with return code 255 and error output: "abort: The filename or extension is too long: ‘F:\Ws\13587\Source\MyProject\src/Design/MyProject.Website/Content/scripts/libs/formbuilder/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/node_modules/bl/node_modules/readable-stream/node_modules/core-util-is’ " Stack Trace: at Continua.Shared.Utils.Mercurial.Run(ProcessArguments args, String workingDir, Func2 checkResult, Boolean runRecoverIfRequired, Boolean allowTermination) at Continua.Shared.Utils.Mercurial.Archive(String repository, String destination, String revision, String includes, IEnumerable1 excludes) at Continua.Modules.Builds.Agent.FileSync.AgentRepositoryCache.<>c__DisplayClasse.b__c() at Continua.Shared.Utils.ReadWriteLockList1.WithReadLock(TId id, CancellationTokenSource cancelTokenSource, Action action) at Continua.Modules.Builds.Agent.FileSync.AgentRepositoryCache.Export(String dest, String revision, String includes, IEnumerable1 excludes, Boolean listFiles) at Continua.Modules.Builds.Agent.AgentRepositoryHelper.CopySourceToWorkspace(String filePattern, IEnumerable1 excludes, String relativeDestination, AgentWorkspaceSyncContext wsCtx, Boolean logRepoFiles) at Continua.Modules.Builds.Agent.AgentBuildHelper.SyncSourceFromServer(IEnumerable1 rules, AgentWorkspaceSyncContext workspaceCtx) at Continua.Modules.Builds.Agent.AgentBuildHelper.InitialiseWorkspaceOnAgent(AgentCallbackProxy proxy, TransportContextDTO source, Guid callId) .


For a possible solution, see http://stackoverflow.com/questions/10753991/mercurial-commit-files-with-more-than-255-characters-path-length-windows

Hi Geert

We’ve looked at this extension before, all it does it provide one new command to clean a repo, it doesn’t enabled long path support for hg.

Hi,

We have implemented long file path support as part of version 1.6 which will be released as a beta very soon