> -----Original Message----- > From: Barry Scott [mailto:ba...@barrys-emacs.org] > Sent: woensdag 2 november 2011 1:12 > To: Subversion Development > Subject: 1.7.0 assert on svn_client_checkout with E235000 > > This is a extract from the pysvn win32 test-01 output. > (I will test with 1.7.1 once there are kits from David Darj's win32svn). > > pysvn is calling svn_client_mkdir and it works > Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add > test" > > pysvn is calling svn_client_list and it works > Info: PYSVN CMD ls file:///b:/repos -v -R > 2 barry 0 01-Nov-2011 23:57:49 file:///B:/repos/trunk > 2 barry 0 01-Nov-2011 23:57:49 file:///B:/repos/trunk/test > Info: Test - checkout > pysvn is calling svn_client_checkout and it fails > Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 > svn: E235000: In file 'C:\SVN-1.7.0\src- > 1.7.0\subversion\libsvn_client\checkout.c' line 94: assertion failed > (svn_uri_is_canonical(url, pool)) > > These same tests pass for SVN 1.6.x. > > I'm well aware of the assert for canonical URLs and as you can see > the URL is same shape for mkdir, list and checkout. > > Is this a known problem with the svn_client API? Or do I need to dig deeper?
The client library expects canonical path arguments and some of these paths are no longer canonical since we added better validations. The canonical form of file:///b:/repos is file:///B:/repos And the canonical form of b:/wc1 is B:/wc1 Either you (as caller of pysvn) or pysvn should canonicalize paths before passing them to the Subversion api. Personally I would say that pysvn shoulddo that for you, but that is up for debate. Bert > > Barry