Summary: | app-portage/layman doesn't use @ suffix for paths of Subversion working copies | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Geaaru <geaaru> |
Component: | [OLD] Development | Assignee: | Sebastian Pipping <sping> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | arfrever |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Geaaru
2009-11-29 08:32:56 UTC
Still after recompile layman package problem is visible. Does the svn command work when you run it manually with subversion 1.6.6? Yes it's works. svn co https://overlay.geaaru.homelinux.net:8080/svn/geaaru_overlay you can try... Name "Ge@@ru" is only relative to layman repos. Ge@@ru Ok since svn command line works ok on working dirs with '@@' (I just verified that as well), it does seem like a problem with layman interfacing to subversion-1.6.6. Assigning to layman maintainer. To be sure: the command /usr/bin/svn up "/usr/portage/local/layman/Ge@@ru" works well for you on a shell? Doesn't work yet with version 1.2.4. #$ layman -s Ge@@ru * Running command "/usr/bin/svn up "/usr/portage/local/layman/Ge@@ru""... Skipped '/usr/portage/local/layman/Ge@' * * Success: * ------ * * Successfully synchronized overlay "Ge@@ru". # layman --version 1.2.4 Problem is relative to python module... svn command works fine. Hi, if you try to call $# layman -d Ge@@ru && layman -a Ge@@ru checkout is done correctly... problem is only on update. The last '@' is peg revision operator for Subversion. For safety, URLs and paths should be suffixed with '@'. Examples: /usr/bin/svn up "/usr/portage/local/layman/name@" /usr/bin/svn up "/usr/portage/local/layman/Ge@@ru@" http://svnbook.red-bean.com/nightly/en/svn.advanced.pegrevs.html contains: "The perceptive reader is probably wondering at this point whether the peg revision syntax causes problems for working copy paths or URLs that actually have at signs in them. After all, how does svn know whether news@11 is the name of a directory in my tree or just a syntax for “revision 11 of news”? Thankfully, while svn will always assume the latter, there is a trivial workaround. You need only append an at sign to the end of the path, such as news@11@. svn cares only about the last at sign in the argument, and it is not considered illegal to omit a literal peg revision specifier after that at sign. This workaround even applies to paths that end in an at sign—you would use filename@@ to talk about a file named filename@." Thanks, Arfrever - very helpful. With that I've been able to reproduce the problem on a shell now: ================================================ # svnadmin create foo\@\@store # svn co file://$PWD/foo\@\@store foo\@\@work svn: Try 'svn help' for more info svn: Syntax error parsing revision 'store' # svn co file://$PWD/foo\@\@store\@ foo\@\@work Checked out revision 0. # svn up foo\@\@work Skipped 'foo@' # svn up foo\@\@work\@ At revision 0. ================================================ app-portage/layman-1.2.4-r1 now comes with a patch for it. Please give it a try and re-open this bug if needed. Thanks for reporting! Ok, with layman-1.2.4-r1 works fine. Thank you very much for support. Ge@@ru |